Linux搭建Socks5网络代理服务器,Centos 8 系统

一、目的用途

用于网络代理转发请求,隐藏真实的请求ip地址,或者用于绕过网络限制的目标服务器,将自己的访问请求到代理服务器,通过网络代理服务器将请求转发到目标服务器

二、安装Socks5前的准备

1、从官网下载ss5安装包,

ss5 官网:http://ss5.sourceforge.net/

下载地址:https://sourceforge.net/projects/ss5/files/

或者直接在服务器上运行如下命令,在安装包加载到指定的文件夹中

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

2、运行命令解压安装包,命令如下

tar -zxvf ss5-3.8.9-8.tar.gz

3、解压完成后,进行编译安装,执行一下命令

先,加载安装ss5安装环境所需要的依赖包,运行一下命令

yum -y install pam-devel openldap-devel openssl-devel

然后,进行编译安装,将目录切换至ss5的安装目录下后,运行以下命令

./configure

make

make install

命令执行完成之后,要是没有报错,说明安装成功

三、安装完成,测试连接

安装成功之后,测试是否能正常连接前需要修改一下ss5配置文件,文件位置

/etc/opt/ss5/ss5.conf

将下面两行的注释去掉,然后保存修改

auth 0.0.0.0/0 - -

permit - 0.0.0.0/0 - 0.0.0.0/0 - - - - -

修改完成之后,启动ss5应用程序

service ss5 start

可使用其他命令,查看ss5的状态,或者关闭ss5应用

service ss5 status

service ss5 stop

四、在安装过程中,可能出现的报错以及对应的解决方案

1、在make编译过程报如下错误

SS5Supa.c: In function 'ss5_secure_dh_compute_key':

SS5Supa.c:208:5: error: dereferencing pointer to incomplete type

ss->p = BN_bin2bn ((pippo->p), pippo->lenp, NULL);

报错原因:openssl的版本过高,需要降级openssl版本

解决方案:安装编译 openssl 1.0.2

下载地址:https://www.openssl.org/source/old/1.0.2/openssl-1.0.2u.tar.gz

编译安装,执行以下命令

./config shared --prefix=/opt/openssl

make

make install

检查openssl是否安装成功,查看openssl的版本

openssl version

2、在make编译过程中,报以下错误

cfns.gperf: In function 'const char* libc_name_p(const char*, unsigned int)':

cfns.gperf:101:1: error: 'const char* libc_name_p(const char*, unsigned int)' redeclared inline with 'gnu_inline' attribute

报错原因:gcc g++的版本过高,需要降低版本,可以使用gcc 4.8.5的版本进行安装

解决方案:可以使用离线方式直接进行安装,首先下载离线安装包

离线包下载链接官网,如果没有就使用阿里云镜像

gcc安装需要的离线包

cpp-4.8.5-44.el7.x86_64.rpm

gcc-4.8.5-44.el7.x86_64.rpm

glibc-devel-2.17-317.el7.x86_64.rpm

glibc-headers-2.17-326.el7_9.x86_64.rpm

kernel-headers-3.10.0-1160.105.1.el7.x86_64.rpm

libmpc-1.0.1-3.el7.x86_64.rpm

mpfr-3.1.1-4.el7.x86_64.rpm

ntfs-3g_ntfsprogs-2017.3.23.tgz

g++安装需要的离线包

cc-c++-4.8.5-44.el7.x86_64.rpm

libstdc++-4.8.5-44.el7.x86_64.rpm

libstdc++-devel-4.8.5-44.el7.x86_64.rpm

离线安装包下载完成后,执行以下命令进行安装

rpm -ivh *.rpm --nodeps --force

检查是否安装成功,查看gcc、g++的版本

查看gcc版本 gcc -v

查看g++版本 g++ -v

版本显示为安装的版本,则表示安装成功

3、在ss5的编译安装过程中,可能报inline等函数未定义的报错提示

报错原因:可能是因为ss5的./configure配置文件有问题

解决方案:执行以下命令,然后默认安装不影响

export CPPFLAGS='-I/opt/openssl/include/'

export LDFLAGS='-L/opt/openssl/lib'

./configure

make

make install

最后检查ss5的安装版本,若显示正确,则表示安装成功

查看ss5版本 ss5 -v

相关推荐
不灭锦鲤27 分钟前
ssrf学习(ctfhub靶场)
网络·学习·安全
weixin_5484442632 分钟前
2024年最新版本神马TV8.5影视APP源码 293TV影视点播系统源码搭建教程 神马TV8.2加强版反编译教程 保姆级小白可搭建 完整版本视频教程
网络
玉树临风江流儿1 小时前
Linux驱动开发(速记版)--设备模型
linux·驱动开发
杰哥在此1 小时前
Python知识点:如何使用Multiprocessing进行并行任务管理
linux·开发语言·python·面试·编程
枫叶丹43 小时前
【在Linux世界中追寻伟大的One Piece】进程信号
linux·运维·服务器
网络研究院3 小时前
如何安全地大规模部署 GenAI 应用程序
网络·人工智能·安全·ai·部署·观点
刻词梨木3 小时前
ubuntu中挂载点内存不足,分配不合理后使用软链接的注意事项
linux·运维·ubuntu
limengshi1383923 小时前
通信工程学习:什么是RIP路由信息协议
网络·网络协议·学习·智能路由器·信息与通信
灯火不休ᝰ4 小时前
[win7] win7系统的下载及在虚拟机中详细安装过程(附有下载文件)
linux·运维·服务器
数云界7 小时前
如何在 DAX 中计算多个周期的移动平均线
java·服务器·前端