solaris9下实现socks5代理

刚开始找了一下,发现全是在Linux下实现的,我按照readme步骤在rh9下作了一遍,用系统默认的gcc很容易的就搞定了 。这里强调的gcc编译器是一个比较关键环节 。先用gcc3.3是没有装过去主要问题出在和ftp上面 。没办法,找个gcc3.4准备看一下,结果解压的时候出现校验和错误,我是bin方式上传的啊,搞不懂了,先不管这个了 。后来仔细了解后发现gcc2 。9系列的在rh9下没有问题 。好家伙,好歹要找个for-Solaris-sparc的话,找到一个接近版本gcc-2.95.3-pkg.zip 。好了罗嗦半天了,就是要这个东东 。
当然在solaris8下的话,直接装就可以了,因为sunfreware有for这个东东,但是gcc有什么要求吗?一句话---不知道!!s9下还有哪个gcc版本可以呢,也不知道,知道的告诉我哦!
下载编译器gcc-2.95.3-pkg.zip(www.sunfreeware.com),解压后得到安装包SFWgcc(这个编译器是要SFW支持)的 。安装这个包:
#pkgadd –d SFWgcc
默认的安装目录是/opt/sfw,为正确使用这个编译器而设置环境变量:
#PATH=/opt/sfw/bin:/usr/local/bin:/usr/ccs/bin:/usr/bin:/usr/ucb:/etc:.
#export

1 。下载socks5安装包,一搜一大堆,现在可能有两个大的区别一个是在win下一个是u下的,后面我给出的这个包名字有的网站上说只在linux下能用,不要管他这一套,继续就是了(其实for solaris8也就是这个了 。另外据我所知socks5几乎可以在任何系统下实现的,自己去实验吧) 。将socks5安装包socks5-v1.0r11.tar.gz以bin方式上传到RH9/solaris9服务器上 。

2 。解压缩软件包
#gunzip socks5-v1.0r11.tar.gz
#tar xvf socks5-v1.0r11.tar

3.开始编译
#cd socks5-v1.0r11
#./configure --with-threads
说明:可以根据需要参考readme来作配置,也可在安装后进行配置(推荐这样就可以了,搞了几个别的配置出错了,怕怕啊)
#make
#make install

4.建立/etc/socks5.conf(许多文件都自己建吧,装完后我是没有看到自动生成的)
需要达到的目的:在局域网段(192.168.0)内提供代理服务,要求提供用户名和密码 。
要使用用户验证,首先要建立/etc/socks5.pwsswd文件
内容为:
# vi /etc/socks5.passwd
userA passwdA (userA代表用户名 。passwdA代表用户userA的密码)

完成/etc/socks5.conf配置文件:

#vi /etc/socks5.conf
auth - - u
permit u - 192.168.0. - - -

注:若改变u和192.168.0.为-,则允许任何用户(不需要用户名和密码)的任意ip使用代理服务;192.168.0.等同于192.168.0.0/255.255.255.0,这个字段同样可以设定某一个ip来使用代理服务 。
在解压目录socks5-v1.0r11下的examples目录下提供了几个常用的配置文件内容,可以参考使用 。
#cd examples
#ls
sock5.conf.dualhomed sock5.conf.gssapi sock5.conf.multipleservers sock5.conf.server2server sock5.conf.singlehomed。。。。
每一个配置文件的后缀说明了它所面向的服务内容,需要时可根据其内容作适当更改 。

5.运行代理服务:
#socks
在第一次装好socks5之后可以通过运行#/usr/local/bin/socks5 –f –s来测试代理服务能否正常运行,如果出现02716: Socks5 starting at Thu May 20 20:33:58 2004 in normal mode,则表示可以正常运行 。

6.停止socks5,只要运行stopsocks -KILL就行,socks5就会停止!

7.高级配置

7.1使用非默认端口:如果想让socks5服务启动的时候不启动默认监听端口1080,比如为8888,可以运行如下命令
# socks5 -b 8888
相应的关服务命令为:
# stopsocks -p 888 -KILL

7.2为了密码文件的安全,使用自建的密码文件,比如/etc/myc.passwd 。这时,只要修改/etc/socks5.conf文件,在其中新加一条项数:
set SOCKS5_PWDFILE /etc/myc.passwd
7.3指定SOCKS v5绑定的ip地址和监听的端口 。如果不指定绑定的IP将使用0.0.0.0

推荐阅读