• Centos搭建socks5代理服务器


    前言

    因为实际需要在自己的CentOS上搭建了一个socks5代理服务器,将整个流程记录下来以供大家参考

    这悠长命运中的晨昏
    常让我 望远方出神

    代理服务器

    实际的工作的有时候需要用到代理服务器,通过代理服务器可以一定程度上隐藏自己的真实IP,将请求数据交给代理服务器,代理服务器在把我们的请求发送到服务端,这样服务器就会以为是代理服务器在请求服务,而不知道真正请求服务获取消息的用户IP,大致流程如下:
    在这里插入图片描述
    简单来说代理服务器会转发我们的请求流量,而服务端会认为是代理服务器在请求服务。

    socks5协议

    目前三大主流的代理协议包括Socks5代理,HTTP代理,HTTPS代理,由于socks5协议工作在传输层和应用层之间,采用TCP/IP协议进行通信,对应用层的多种协议有较好的兼容性,因此应用的十分广泛。

    Centos搭建ss5代理服务器

    安装ss5

    首先需要准备一台服务器用作代理服务器,这里用了Centos的云服务器来作配置
    安装依赖环境如下

    yum -y install  gcc openldap-devel pam-devel openssl-devel 
    
    • 1

    创建好一个目录,进入该目录后,wget下载好ss5安装文件

    wget http://jaist.dl.sourceforge.net/project/ss5/ss5/3.8.9-8/ss5-3.8.9-8.tar.gz
    
    • 1

    解压安装文件

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

    进入目录后进行编译

    cd ss5-3.8.9
    
    • 1
    ./configure
    
    • 1
    make && make install
    
    • 1

    如果没有报错的话说明成功安装ss5

    修改配置文件

    接下来修改配置文件,首先进行备份

    cp /etc/opt/ss5/ss5.conf /etc/opt/ss5/ss5.conf.bak
    
    • 1

    修改配置文件

    vi /etc/opt/ss5/ss5.conf
    
    • 1

    :set nu 可以标注行号,找到87行取消注释

    #auth    0.0.0.0/0
    修改为
    auth    0.0.0.0/0
    
    • 1
    • 2
    • 3

    找到第203行取消注释,同时开启认证 注意修改的那个u
    注意:这里如果不需要添加用户密码认证仅去掉注释即可,也不需要修改/etc/opt/ss5/ss5.passwd文件

    #permit -       0.0.0.0/0       -       0.0.0.0/0       -       -       -       -       -
    修改为
    permit u        0.0.0.0/0       -       0.0.0.0/0       -       -       -       -       -
    
    • 1
    • 2
    • 3

    :wq 保存配置并退出

    添加用户名和密码

    在/etc/opt/ss5/ss5.passwd文件中可以添加用户名和密码,每行写一个用户名和密码,用户名和密码用空格隔开,例如:

    test ss5test
    
    • 1

    如果实际需要,建议增加密码复杂度

    修改ss5端口

    修改端口配置文件

    vi /etc/sysconfig/ss5
    
    • 1

    第2行取消注释,同时修改为自己需要的端口,默认端口为1080

    SS5_OPTS=" -u root -b 0.0.0.0:9988"
    
    • 1

    调整ss5性能

    这里依据实际需求调整,主要在修改系统资源配置,如果ss5不影响正常使用或使用人数较少可以不修改

    ulimit -SHn 10240
    ulimit -SHs unlimited
    echo 100000 >/proc/sys/net/nf_conntrack_max
    
    • 1
    • 2
    • 3

    修改ss5启动权限

    修改执行权限

    chmod u+x /etc/rc.d/init.d/ss5
    chmod +x /etc/init.d/ss5
    
    • 1
    • 2

    开机自启

    chkconfig --add ss5
    systemctl restart ss5    
    
    • 1
    • 2

    启动ss5服务

    启动ss5并检查状态
    systemctl start ss5
    systemctl status ss5
    在这里插入图片描述
    正常启动后可以进行ss5测试,如果连接不上考虑放行端口,云服务器一直开放了所有端口
    如果还不行,就考虑把用户名和密码认证给去掉,/etc/opt/ss5/ss5.passwd文件清空,/etc/opt/ss5/ss5.conf文件第203行仅注释,其他不变

    ss5 测试

    用QQ测试,QQ登入界面右上角设置
    在这里插入图片描述
    或者在代理软件中添加好代理,然后通过在线网站查询自己的IP
    在这里插入图片描述
    可以看到我们的请求已经通过服务器发送出去了
    至此,ss5代理服务器搭建成功,若有其他疑问,欢迎评论留言

  • 相关阅读:
    常见激活函数及其导数
    golang 函数参数传递--指针,引用和值(二)
    耐心一些,总有一种清理方法能让你靠近幸福
    mysql 使用idb文件恢复数据
    linux001--初次体验vmware虚拟机
    Mybatis——使用步骤
    iOS系统暗黑模式
    HTML5 新元素
    浅谈在操控器类中,为何要通过osgGA::CameraManipulator的逆矩阵改变视点位置
    Clion中使用C/C++开发stm32程序
  • 原文地址:https://blog.csdn.net/monster663/article/details/126826692