linux ss5(docker ssh)
各位老铁们,大家好,今天由我来为大家分享linux ss5,以及docker ssh的相关问题知识,希望对大家有所帮助。如果可以帮助到大家,还望关注收藏下本站,您的支持是我们最大的动力,谢谢大家了哈,下面我们开始吧!
在Linux服务器上安装配置socks5代理的教程
socks5
SOCKS5是一个代理协议,它在使用 TCP/IP协议通讯的前端机器和服务器机器之间扮演一个中介角色,使得内部网中的前端机器变得能够访问Internet网中的服务器,或者使通讯更加安全。SOCKS5服务器通过将前端发来的请求转发给真正的目标服务器,模拟了一个前端的行为。在这里,前端和SOCKS5之间也是通过TCP/IP协议进行通讯,前端将原本要发送给真正服务器的请求发送给SOCKS5服务器,然后SOCKS5服务器将请求转发给真正的服务器。
如果您的机器具有一个合法的 Internet IP地址,或者您利用自己机器上的调制解调器拨号上网,可以自由和 Internet上任何主机沟通,那么您通常不必关心 SOCKS5协议。SOCKS5协议对于处在内部网络中的机器,需要透过网络中某些可以联通外部 Internet的机器访问外部时,有用。SOCKS5服务器在将通讯请求发送给真正服务器的过程中,对于请求数据包本身不加任何改变。SOCKS5服务器接收到真正服务器的响应后,也原样转发给前端。因此,SOCKS5协议是一种代理协议,对于各种基于 TCP/IP的应用层协议都能够适应,几乎是万能的。它虽然不能理解自己转发的数据的内部结构,但是它能够忠实地转发通讯包,完成协议本来要完成的功能。
与SOCKS5协议不同,HTTP代理是通过HTTP协议进行的,HTTP代理服务器软件了解通讯包的内部结构,在转发过程中还要对通讯进行某种程序的修改和转换。和HTTP代理协议不同,SOCKS5实际上是一个传输层的代理协议。我们可以想象,如果每个具体的应用层协议都要设计对应的代理协议表达办法,一个特定的代理服务器无论如何也支持不过来那么多新出现的协议。因此,可以说SOCKS5的出现缓解了各种具体协议需要专门设计代理协议的困难局面。不过,并不是凡是使用基于TCP/IP协议的应用协议的软件,都可以无条件地透过SOCKS5服务器进行通讯,还要求前端软件本身具有SOCKS5的接口,才能利用SOCKS5代理服务器。
安装配置
1.安装socks 5
1.1安装依赖开发库
复制代码代码如下:
# yum install pam-devel openldap-devel openssl-devel
1.2安装socks 5
复制代码代码如下:
# wget
# tar-xzvf ss5-3.8.9-8.tar.gz
# cd ss5-3.8.9
#./configure
# make
# make install
2. socks 5配置
2.1修改配置文件
复制代码代码如下:
# vim/etc/opt/ss5/ss5.conf
auth 0.0.0.0/0–-
改为
复制代码代码如下:
auth 0.0.0.0/0– u
permit– 0.0.0.0/0– 0.0.0.0/0––––-
改成为
复制代码代码如下:
permit u 0.0.0.0/0– 0.0.0.0/0––––-
3.添加socket 5用户
复制代码代码如下:
# cat/etc/opt/ss5/ss5.passwd
##用户密码
ttlsa 123456
4.启动socket 5
复制代码代码如下:
# sh/etc/rc.d/init.d/ss5 start
doneting ss5...
默认情况ss5文件没有执行权限,如果觉得使用sh来启动麻烦,那么按如下方法:
复制代码代码如下:
# chmod u+x/etc/rc.d/init.d/ss5
# chkconfig--add ss5//可选
# chkconfig ss5 on//可选
# service ss5 start
5.查看是否启动
复制代码代码如下:
# netstat-lntp| grep ss5
tcp 0 0 0.0.0.0:1080 0.0.0.0:* LISTEN 14262/ss5
默认端口1080
6.测试socks5
安装Proxifier,默认情况所有请求都走socks5.打开百度,输入IP,可以看到如下结果是我们运维生存时间(ttlsa.com)的ip地址
7.常见错误
7.1缺少PAM
复制代码代码如下:
configure: error:*** Some of the headers weren't found***
# yum-y install pam-devel
8.结束
socks5你安装成功了吗?这会儿我还没关闭socks5,你可以拿本章的账号密码做个测试。
如何在Linux下配置socks5代理
找到socks5-v1.0r11.tar.gz这个软件包
开始编译,安装
1
2
3
4
5
#tar xvfz socks5-v1.0r11.tar.gz
#cd socks5-v1.0r11
#./configure--with-threads
#make
#make install
开始配置
一般来说安装完后,会在/etc目录下生成socks5.conf(配置文件)和socks5.passwd(用于验证的文件)这两个文件,
下面我把我的配置文件帖出来
#/etc/socks5.conf
#指定SOCKS v5绑定的ip地址和监听的端口。如果不指定绑定的IP将使用0.0.0.0
set SOCKS5_BINDINFC 192.168.0.8:1080
#忽略ident请求。当客户机没有运行identd时,使用SOCKS5_NOIDENT将降低超时值
set SOCKS5_NOIDENT
#指定连接停顿最长时间。超过最大值后,socks5断开连接
set SOCKS5_TIMEOUT 15
#socks5将接受SOCKS V4协议的请求,默认不接受
set SOCKS5_V4SUPPORT
#指定同时存在的最大子进程数,Socks5预设为64
set SOCKS5_MAXCHILD 4
#指定密码文件
set SOCKS5_PWDFILE/usr/local/socks5/etc/socks5.passwd
#对所有的客户连接都使用username/password用户认证方法
auth-- u
#允许来自192.168.0.的任何经过用户认证的连接
permit u- 192.168.0.---
#/usr/local/socks5/etc/socks5.passwd
#用户密码
userA passwdA
userB passwdB
userC passwdC
前面的一些设置由于我在配置文件里都写了相关的内容,就不在说明了
如果不需要用户验证只需要把
auth-- u
改成 auth---
permit u- 192.168.0.---
改成
permit------
注意上面permit------这一句,是使任何人都可以使用你的socks5 server,非常不安全(让你作跳板),最好是有点限制
如
permit-- clientIP---
开始测试
/usr/local/socks5/bin/socks5-f-s
如果出现下面的信息表示测试成功。
18210: Socks5 starting at Mon Dec 14 18:23:45 1998 in normal mode
然后退出socks5,开始正式运行它在背景模式:
正式运行
/usr/local/socks5/bin/socks5-t-s 2>/var/log/socks5
最后,加到/etc/rc.d/rc.local
echo"/usr/local/socks5/bin/socks5-t-s 2>/var/log/socks5.log"
>>/etc/rc.d/rc.local
如果要停止socks5,只要运行/usr/local/socks5/bin/stopsocks-kill就行,socks5就会停止!
启动测试:/usr/local/socks5/bin/socks5-t
使用非默认端口:如果你想让socks5服务启动的时候不启动默认监听端口1080,比如为1234,我们可以运行如下命令
socks5-b 1234-t当然你关掉这个服务,就必须用下面的命令/usr/local/socks5/bin/stopsocks-p 1234-kill