Socks5代理服务器搭建

Linux搭建Socks5代理服务器

1、首先,编译安装SS5需要先安装一些依赖组件

1
yum -y install gcc gcc-c++ automake make pam-devel openldap-devel cyrus-sasl-devel openssl-devel 

2、去官网下载SS5最新版本的源代码

1
wget -c https://nchc.dl.sourceforge.net/project/ss5/ss5/3.8.9-8/ss5-3.8.9-8.tar.gz

3、解压后开始编译安装:

1
2
3
4
5
tar zxvf ./ss5-3.8.9-8.tar.gz
cd ss5-3.8.9
 ./configure
 make
 make install 

4、让SS5随系统一起启动

1
2
3
chmod +x /etc/init.d/ss5
chkconfig --add ss5
chkconfig --level 345 ss5 on

5、在/etc/opt/ss5/ss5.conf中找到auth和permit两行,按照下面的格式进行修改则不需要验证

img

img

6、ss5 默认使用1080端口,并允许任何人使用,如果要修改默认端口,请修改 /etc/sysconfig/ss5 

在/etc/sysconfig/ss5这个文件中,添加下面这一行命令
1
2
3
4
-u:后面为启动用户
-b:后面的参数代表监听的ip地址和端口号
# Add startup option here
SS5_OPTS=" -u root -b 0.0.0.0:8080"  

7、启动ss5

1
service ss5 start

8、如果在云服务器安装,请在安全组开放SS5监听的端口

9、使用QQ代理测试:

img

如果需要配置访问权限,请按如下修改:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
a、开启用户名密码验证机制
 vim /etc/opt/ss5/ss5.conf
 在ss5.conf中找到auth和permit两行,按照下面的格式进行修改
 auth   0.0.0.0/0    -     u
 permit u    0.0.0.0/0    -    0.0.0.0/0    -    -    -    -    -
 b 、设置用户名和密码
 vim /etc/opt/ss5/ss5.passwd
  一行一个账号,用户名和密码之间用空格间隔,例如:
  user1 123
  user2 234
c、重启服务生效
   service ss5 restart 

创建用户分组,以方便给不同的用户分配不同的访问权限:

1
2
3
4
5
/etc/opt/ss5目录中创建以用户分组名命名的文件,然后在相应的组用户文件中添加相应的用户。
  需要创建两组用户:
-  不受限制用户组:ulimit
-  受限制用户组:limit
  /etc/opt/ss5目录里面创建ulimit和limit这两个文件,然后在这两个文件中分别填入 /etc/opt/ss5/ss5.passwd中已添加的用户,格式依旧是每行一个用户(不需要填写用户密码)。<br>  请注意!/etc/opt/ss5目录下的这些文件必须能被Ss5服务的执行用户有读取权限(Ss5服务的默认执行用户是nobody)。

设置不同用户组的访问控制:

1
2
3
4
5
6
7
8
# ulimit组用户不受限制
permit u     0.0.0.0/0    -    0.0.0.0/0    -    -    ulimit -    -
 
# limit组用户限制流量为512k
permit u     0.0.0.0/0    -    0.0.0.0/0    -    -    limit 512000 -
 
# 拒绝所有ip访问google
permit u     0.0.0.0/0    -    www.google.cn    -    -    - - -

 

 

posted @   闻所未闻  阅读(7855)  评论(0编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
点击右上角即可分享
微信分享提示