×

代理上网方案:Socks5代理服务器配置

hqy hqy 发表于2025-10-22 21:22:40 浏览3 评论0

抢沙发发表评论

今天给大家分享一下如何配置Socks5代理服务器(有需要的可以复制内容下来,有很多篇类似的文章被强制删除了)。首先来看一下我的环境:

0

大家都知道,家庭网络是没有固定公网IP地址,所以我利用了一台阿里云服务器提供的公网IP地址作为中转,Socks5服务端与阿里云服务器使用VPN通道连接。

配置代理前后的访问网站的路径:

0

配置代理前客户端访问网站时,网站抓取到的是“家庭网络1”的公网IP地址。

当客户配置代理后,客户端再访问网站时,网站抓取到的就是“家庭网络2”的公网IP地址。

我为什么在大费周章自己配置Socks5代理上网呢?

因为我有很多帐号要登录网站,但只有一台电脑,为了不让网站检测到是同一人操作多个帐号,所以要配置代理上进行IP地址隔离。

当然也可以在网上直接购买代理服务器,但网上购买的代理服务器你不知道有多少人在用,而且也不便宜,自己配置成本不高还安全。

好了,下面来看看我的实现过程。


1、硬件环境介绍

客户端:一台win11笔记本电脑

阿里云服务器:CentOS7.6操作系统,具有固定公网IP地址

Socks5服务端:重刷过系统的机顶盒,当前系统是ubuntu20.04


2、软件环境介绍

win11安装指纹浏览器(也可以用其他的代理软件)。

阿里云服务器:启用Firewall防火墙并放通相应的端口,阿里云安全组放通相应的端口,本文涉及端口为10081。

Socks5服务端:因为是ubuntu20.04,这配置了华为的源,关闭防火墙。

WireGuard:vpn软件,打通家庭网络2与云服务器,使阿里云服务器通过内网地址访问到Socks5服务端(这里不讲解,参考往期文章部署)。

Dante:代理服务软件,部署在服务端配置Socks5代理。


3、关于Dante软件

Dante(全称Dante SOCKS Proxy)是一款开源的SOCKS5代理工具,广泛用于实现网络流量的安全转发与匿名访问。其以轻量、跨平台兼容性及灵活的配置著称,尤其适合在Linux服务器环境中部署。

Dante支持SOCKS5协议的核心功能,包括TCP/UDP流量代理、身份验证机制(如用户名/密码)以及IPv4/IPv6双栈支持。其兼容性覆盖主流的Linux发行版,例如CentOS、Debian和Ubuntu等。


4、安装配置Dante软件

安装和配置都非常的简单。

4.1 安装Dante

在Socks5服务端设备上直接使用apt-get命令安装即可。



apt-get updateapt-get install dante-server -y

4.2 修改配置文件

修改前先将原配置文件进行备份,避免配置错误后回滚配置。


cp /etc/danted.conf /etc/danted.conf.bak

配置修改文件,修改后配置如下:


vim /etc/danted.conf

# 文件内容如下






















user.privileged: rootuser.unprivileged: nobodylogoutput: syslog /var/log/sockd.log
internal: 0.0.0.0 port = 10081external: eth0:1
# 配置认证method: username
#访问控制client pass {  from: 0.0.0.0/0 to: 0.0.0.0/0  log: connect disconnect}
#代理控制socks pass {  from: 0.0.0.0/0 to: 0.0.0.0/0  log: connect disconnect}
0

# 注意网卡名称和端口号,如果启用防火墙,要放通指定端口

4.3 启动服务



systemctl start dantedsystemctl enable danted

检查服务时发现有错误提示:


warning: openlogfile(): could not open or create logfile "/var/log/sockd.log" for writing: Read-only file system

日志要不要影响不大,继续使用即可。

4.4 创建用户和密码



useradd usera #添加用户passwd usera #设置密码

如果不想该用户登录到系统,则将其修改为nologin:


usermod -s /bin/nologin usera

4.5 重启服务


systemctl restart danted

4.6 验证

在阿里云服务器上执行命令,因为配置了VPN通道,使用内网地址就可以访问到socks服务端。

通过访问网站http://cip.cc确定公网IP地址,查看云服务器的IP地址,即使用代理前的公网IP:

0

使用代理后验证公网IP:


curl -x socks5h://usera:passworda@192.168.10.7:10081 http://cip.cc
0

因为帐号密码使用的是本地用户,使用过程使用的是明文,为了系统的安全性,(1)把用户设置为nologin,(2)严格控制SSH远程访问。

192.168.10.7为Socks5服务端的内网地址。

如果不使用帐号密码,则会提示错误:


curl -x socks5h://192.168.10.7:10081 http://cip.cc
0


5、配置转发

在阿里云服务器上的防火墙配置一条富规则,将本地的10081端口转发到IP地址192.168.10.7的10081端口上:



firewall-cmd --permanent --add-rich-rule 'rule family="ipv4" forward-port port="10081" protocol="tcp" to-port="10081" to-addr="192.168.10.7"'firewall-cmd --reload


0

在云服务器访问测试,将访问的IP修改为云服务器的公网IP+端口:


curl -x socks5h://usera:passworda@x.x.x.x:10081 http://cip.cc
0


6、在客户端上测试

在指纹浏览器中配置Socks5代理:

0

使用浏览器打开,IP也是代理之后的IP地址:

0


赞赏二维码



打赏

本文链接:https://www.kinber.cn/post/5744.html 转载需授权!

分享到:


推荐本站淘宝优惠价购买喜欢的宝贝:

image.png

 您阅读本篇文章共花了: 

群贤毕至

访客