首先,对系统来一次升级,以解决一些莫名其妙的依赖问题。

sudo yum update

然后安装Python-pip。

sudo yum -y install python-pip  

注意,通过yum包管理工具安装的pip版本很旧,为防止出现问题,请更新pip。

pip install --upgrade pip  

为了防止出现一些不可描述的错误,请清除缓存。

sudo yum clean all  

然后执行ShadowSocks的安装命令。

pip install shadowsocks 

安装完成,但是显然还没配置完成。

接下来开始配置。

首先新建一个json配置文件。

vi /etc/shadowsocks.json  

在vi窗口中按下键盘i,切换到输入模式,并输入以下代码:(一定要注意里面的标点符号,99%的报错来源于此)

{
   "server":"server_ip",
   "server_port":25,
   "local_address": "127.0.0.1",
   "local_port":1080,
   "password":"password",
    "timeout":300,
   "method":"aes-256-cfb",
   "fast_open": false
}   

别想着直接复制,自己手打进去吧,里面的server_ip换成自己的服务器公网ip,server_port字段自己改成你要的外网端口,password字段改成你要设置的密码,然后下面的method字段改成自己需要的加密方式。

输入完成后按esc退出输入模式,然后输入:wq,回车,保存并退出。

接下来设置ShadowSocks服务。

新建一个服务配置文件。

vi /etc/systemd/system/shadowsocks.service  

然后键入以下内容,保存并退出。

[Unit]
Description=***  

[Service]
TimeoutStartSec=0
ExecStart=/usr/bin/ssserver -c /etc/shadowsocks.json  

[Install]
WantedBy=multi-user.target  

启用服务:

systemctl enable shadowsocks  

启动服务:

systemctl start shadowsocks  

查看服务状态:

systemctl status shadowsocks -l  

如果出现报错,它会提示报错的内容,自己再检查,或者搜索即可解决。

然后开启对应端口:

firewall-cmd --zone=public --add-port=25/tcp --permanent  

里面的25要改成你自己定义的那个外网端口。

然后使用你的客户端,按照配置文件的内容去链接,就可以使用了。

注意,如果重启后发现无法连接,请使用命令查看服务状态,然后再尝试重启服务:

systemctl restart shadowsocks

ss1的更多相关文章

  1. CRL快速开发框架系列教程十三(嵌套查询)

    本系列目录 CRL快速开发框架系列教程一(Code First数据表不需再关心) CRL快速开发框架系列教程二(基于Lambda表达式查询) CRL快速开发框架系列教程三(更新数据) CRL快速开发框 ...

  2. JAVA的内存模型(变量的同步)

    一个线程中变量的修改可能不会立即对其他线程可见,事实上也许永远不可见. 在代码一中,如果一个线程调用了MyClass.loop(),将来的某个时间点,另一个线程调用了MyClass.setValue( ...

  3. html5 audio总结

    前言 html5中对音频,视频播放原生支持.最近做了一个音乐播放器,得益于快过年了,才能抽出一点时间来总结一下.总的来说,html5对audio的支持非常强大, 难怪flash要死.浏览器上装播放插件 ...

  4. MessageBox.Show()的各种用法

    [函数] <整型> MessageBox(<字符串> Text, <字符串> Title, <整型> nType,MessageBoxIcon); [函 ...

  5. Swift3 - String 字符串、Array 数组、Dictionary 字典的使用

    Swift相关知识,本随笔为 字符串.数组.字典的简单使用,有理解.使用错误的地方望能指正. ///************************************************** ...

  6. ambari2.4.2_centos7 学习全纪录

    目录: 为什么要用Ambari 概念概述 原理简介 安装 创建集群 创建集群 手动修改配置 NameNode HA 安装SmartSense 二次开发 为什么要用Ambari Ambari 是 Apa ...

  7. fail树

    前置技能:AC自动机 假设我们有了一个AC自动机,然后在上面进行字符串匹配. 上面是一个有四个字符串的AC自动机(abcde.aacdf.cdf.cde),虚线是fail指针,实线是转移. 这是上一次 ...

  8. linux0.11改进之四 基于内核栈的进程切换

    这是学习哈工大李治军在mooc课操作系统时做的实验记录.原实验报告在实验楼上.现转移到这里.备以后整理之用. 完整的实验代码见:实验楼代码 一.tss方式的进程切换 Linux0.11中默认使用的是硬 ...

  9. lucene+IKAnalyzer实现中文纯文本检索系统

    首先IntelliJ IDEA中搭建Maven项目(web):spring+SpringMVC+Lucene+IKAnalyzer spring+SpringMVC搭建项目可以参考我的博客 整合Luc ...

随机推荐

  1. FTP开启被动连接模式

    在Linux环境下搭建ftp服务器,具体步骤见:http://www.cnblogs.com/zjiacun/p/6896803.html 配置被动连接的方法: 找到配置文件/etc/vsftpd/v ...

  2. Symfony 没有找到数据库驱动An exception occured in driver: could not find driver

    如果一直报这个错误, 第一,你本地没有相关的数据库驱动(mysql:-->pdo_myql,postgresql-->pdo_pgsql等); 需要执行 php -m|grep -i pd ...

  3. Oracle视图传递参数

    在Oracle里,视图不像存储过程和函数一样,可以定义输入参数,但我们可以变个方式,使用程序包来实现. oracle package: oracle package是oracle包,是一组相关过程.函 ...

  4. linux 9 -- 交互式使用Bash Shell

    二十二. 交互式使用Bash Shell:     1.  用set命令设置bash的选项:     下面为set主要选项的列表及其表述: 选项名 开关缩写 描述 allexport -a 打开此开关 ...

  5. iOS tabbar 上面更换任意图

    tabbar 对add 上面的图片 有一层默认虚化 对于这种系统高度继承后的 控件 处理办法就是自定义 解决方案 1.放在tabbar 上的图片 不能太小 不然裁剪后 会很模糊 2 .通过裁剪 压缩的 ...

  6. 【leetcode刷题笔记】Anagrams

    Given an array of strings, return all groups of strings that are anagrams. Note: All inputs will be ...

  7. nginx日志配置,以及日志轮询

    一.为nginx配置错误日志 Nginx错误日志是调试nginx的重要手段,属于核心功能模块的参数(ngx_core_module)该参数名字为err_log,是放在Main区块中全局配置 err_l ...

  8. 彻底搞懂word-break、word-wrap、white-space

    原文链接: https://juejin.im/post/5b8905456fb9a01a105966b4 white-space.word-break.word-wrap(overflow-wrap ...

  9. jquery实现td控制显示宽度

    目的为了实现td表格元素出现省略的情况,然后点击中间位置是td的宽度增加. 实现代码如下,采用css+jquery的实现方式: <!DOCTYPE html> <html lang= ...

  10. Spark- Spark内核架构原理和Spark架构深度剖析

    Spark内核架构原理 1.Driver 选spark节点之一,提交我们编写的spark程序,开启一个Driver进程,执行我们的Application应用程序,也就是我们自己编写的代码.Driver ...