一 : CentOS下双网卡主备模式配置详解
1 简述
通过双网卡设置主备模式,实现当一块网卡宕掉时,另外一块网卡可以自动顶替宕掉的网卡工作,保障网络正常访问。
2 实现
2.1. 查看网卡信息
执行ifconfig -a命令
2.2. 修改网卡配置文件
切换工作目录
cd /etc/sysconfig/network-scripts/
修改网卡配置文件ifcfg-eth0 ,保证以下几项内容正确:
TYPE=Ethernet
BOOTPROTO=dhcp
ONBOOT=yes
MASTER=bond0
SLAVE=yes
修改网卡配置文件ifcfg-eth1 如果没有创建,保证以下几项内容正确(同上):
DEVICE=eth1
TYPE=Ethernet
BOOTPROTO=dhcp
ONBOOT=yes
MASTER=bond0
SLAVE=yes
2.3. 虚拟网卡文件配置
创建文件
touch ifcfg-bond0
编辑文件添加以下内容:
DEVICE=bond0
TYPE= Ethernet
ONBOOT=yes
BOOTPROTO=none
IPADDR="192.168.137.243"
NETMASK="255.255.255.0"
GATEWAY="192.168.137.1"
DNS="192.168.137.1"
NAME=bond0
BONDING_OPTS=”miimon=100 mode=1”
说明:如果是在虚拟机里BONDING_OPTS 需要添加fail_over_mac=1 如BONDING_OPTS=”miimon=100 mode=1 fail_over_mac=1”
下面几项根据所处的网络环境进行设置:
IPADDR="192.168.137.243"
NETMASK="255.255.255.0"
GATEWAY="192.168.137.1"
DNS="192.168.137.1"
PREFIX=24
2.4. 重启服务
执行 :
service network restart
或者reboot 重启服务器
2.5. 查看状态
ifconfig
查看主备信息:
2.6. 测试
关闭网卡eth0
ifconfig eth0 down
ping一下ip看看是否能通。
查看主备是否切换:
完成
二 : socks5代理服务器配置
一、 SOCKS概述
SOCKS其实是一种网络代理协议。该协议所描述的是一种内部主机(使用私有ip地址)通过SOCKS服务器获得完全的Internet访问的方法。具体说来是这样一个环境:用一台运行SOCKS的服务器(双宿主主机)连接内部网和Internet,内部网主机使用的都是私有的ip地址,内部网主机请求访问Internet时,首先和SOCKS服务器建立一个SOCKS通道,然后再将请求通过这个通道发送给SOCKS服务器,SOCKS服务器在收到客户请求后,向客户请求的Internet主机发出请求,得到相应后,SOCKS服务器再通过原先建立的SOCKS通道将数据返回给客户。当然在建立SOCKS通道的过程中可能有一个用户认证的过程。
SOCKS和一般的应用层代理服务器是完全不同的。一般的应用层代理服务器工作在应用层,并且针对不用的网络应用提供不同的处理方法,比如HTTP、FTP、SMTP等,这样,一旦有新的网络应用出现时,应用层代理服务器就不能提供对该应用的代理,因此应用层代理服务器的可扩展性并不好;与应用层代理服务器不同的是,SOCKS代理服务器旨在提供一种广义的代理服务,它与具体的应用无关,不管再出现什么新的应用都能提供代理服务,因为SOCKS代理工作再线路层(即应用层和传输层之间),这和单纯工作在网络层或传输层的ip欺骗(或者叫做网络地址转换NAT)又有所不同,因为SOCKS不能提供网络层网 关服务,比如ICMP包转发等。这三种技术的比较如下表所示
类别 ip欺骗(NAT) SOCKS v5 应用层代理
网络层或传输层 线路层 应用层
无
有 有 好 无 有 无 无 工作区域 用户认证 网络服务
目前的SOCKS版本是第五版,第五版同第四版的区别主要在于第五版提供多种不同的用户认证方法和UDP代理。
二、 SOCKS v5的安装
1. 软件的获取
对于非商业使用SOCKS是免费的,你可以从
下载SOCKS v5的最新版,当前的最新版本是socks5-v1.0r11.tar.gz,使用RedHat的朋友也可以到RedHat的官方站点下载相应的SOCKS v5的rpm包。下面我们以SOCKS v5 的最新版socks5-v1.0r11.tar.gz为例讲述SOCKS v5的安装过程。
2. 将下载来的socks5-v1.0r11.tar.gz拷贝到/tmp目录下
#cp socks5-v1.0r11.tar.gz /tmp
3. 解开压缩包
#tar xvzf socks5-v1.0r11.tar.gz
4. 进入socks5-v1.0r11开始编译
#cd socks5-v1.0r11
#./configure
#make
#make install
如果要更改缺省的安装选项,请仔细阅读README和INSTALL文档的相关说明。如
果编译过程出现了问题,也可以到以下站点下载我编译的binary包:
下载后将该socks5.tar.gz binary包拷贝到根目录/,运行tar xvzf socks5.tar.gz即可。相
关的文件路径如下: 应用可扩展性 好
tar xvzf socks5.tar.gz
usr/bin/socks5
usr/bin/stopsocks
usr/bin/runsocks
usr/lib/libsocks5.a
usr/lib/libsocks5_sh.so
usr/man/man1/stopsocks.1
usr/man/man1/socks5.1
usr/man/man1/socks5.1.gz
usr/man/man1/socks5_clients.1
usr/man/man1/runsocks.1
usr/man/man5/socks5.conf.5
usr/man/man5/socks5.conf.5.gz
usr/man/man5/socks5.passwd.5
usr/man/man5/socks5.passwd.5.gz
usr/man/man5/libsocks5.conf.5
etc/socks5/libsocks5.conf
etc/socks5/passwd
etc/socks5/socks5.conf
etc/rc.d/init.d/socks5
三、 SOCKS v5的配置
我们主要通过socks5.conf文件来配置SOCKS v5服务器。该配置文件的路径可以在编译SOCKS v5时自行指定,缺省路径为:/etc/socks5.conf。SOCKS v5服务器在每次启动或收到HUP信号时读入该配置文件的内容。该配置文件通常由以下几个方面的内容构成:
-ban host:定义拒绝服务的客户列表
-authentication:定义SOCKS v5服务器使用的用户认证方法
-interface:定义SOCKS v5服务器绊定的ip地址和服务端口
—variables and flags:定义SOCKS v5服务器运行的环境
-proxies:定义客户可以通过SOCKS v5服务器访问的地址列表以及SOCKS v5服务
器访问这些地址的方法
-access control:定义SOCKS v5服务器接受或拒绝客户连接的规则
下面我们分别来讲述这些条目对应的语法:
1. ban host:
语法:ban source-host source-port
说明:SOCKS v5服务器将拒绝接受来自source-host:source-port的客户连接。
2. authentication:
语法:auth source-host source-port auth-methods
说明:对于来自source-host:source-port的客户连接,SOCKS v5服务器将使用
auth-methods所定义的用户认证方法。对于没有定义认证方法的客户将使用任何可以使用的认证方法。
3. interface:
语法:interface hostpatern portpattern interface-address
说明:来自source-host:source-port的客户连接由interface-address处理;目的地址为source-host:source-port的客户连接由SOCKS v5 代理服务器从 interface-address发出连接请求。
4. variables:
语法:set variable value
说明:定义SOCKS v5运行参数,SOCKS v5有以下一些常用的运行参数:
SOCKS_BINDINTFC host:port:指定SOCKS v5绑定的ip地址和监听的端口。如果
不指定绑定的ip地址,SOCKS v5将使用0.0.0.0。
5. proxies:
语法:proxy-type dest-host dest-port proxy-list
说明:当客户请求的目的为dest-host:dest-port时,SOCKS v5将使用proxy-list中的
代理服务器请求数据。
6. access control:
语法:permit auth cmd src-host dest-host src-port dest-port [user-list]
deny auth cmd src-host dest-host src-port dest-port [user-list]
说明:通过这两条语句所定义的规则来进行客户访问控制。
我们再对以上语法作进一步的解释:
1. host的表示方法:
-:表示任意主机
n1.:表示n1.0.0.0/255.0.0.0
n1.n2.:表示n1.n2.0.0/255.255.0.0
n1.n2.n3.:表示n1.n2.n3.0/255.255.255.0
.domain.name:表示主机名以.domain.name结尾的主机
some.domain.name:表示主机名为some.domain.name的主机
2. port的表示方法:
-:表示任意端口
service name:用/etc/service中定义的服务名来表示,如telnet
port number:直接指定数字端口,如80
[port_start,port_end]:指定一个端口范围,如[1024,6000]表示从端口1024到6000,
(1024,6000)表示从端口1025到5999
3. auth的值:
n:无用户认证
u:使用username/password用户认证方法
k:使用Kerberos用户认证方法
-:使用任何可用的用户认证方法
4. cmd的值:
-:任何命令
c:connect
b:bind
u:UDP
p:ping
t:traceroute
5. user的值:
-:任何用户
6. proxy的值:
socks5: SOCKS v5
socks4: SOCKS 版本4
noproxy:不使用代理而直接连接
7. server的值:
host: 指定服务器的hostname,使用缺省服务端口
host:port:指定服务器的hostname和该服务的监听端口
下面是一些例子:
auth ― - u
说明:对所有的客户连接都使用username/password用户认证方法
permit u - 192.168.1. - - -
说明:允许来自192.168.1.的任何经过用户认证的连接
更多的例子请参考以下资源:
四、 SOCKS v5一些常见问题的说明
1. windows客户端的配置
有些windows的应用程序,如IE、OICQ等等本身就支持SOCKS代理服务器, 但是更多的windows应用程序是不提供对SOCKS代理服务器的支持的,这时候 我们就可以利用一些相应的工具来使得这些应用程序可以使用SOCKS代理服务 器。其中最常用的工具sockscap,可以从以下的网址下载sockscap:
2. 用户认证问题
SOCKS v5已经具有了用户认证功能,诸如IE等应用程序虽然提供了对SOCKS
代理服务器的支持,但是并不能进行用户认证,这种情况下我们也只能用sockscap 等工具来提供IE的用户认证接口。需要注意的是,SOCKS的认证过程并不会象 squid一样弹出认证窗口。
3. 运行模式问题
SOCKS v5具有以下几种运行模式:
standalont:这是SOCKS v5缺省的运行模式
preforking:该模式适合服务器资源有限的情况,因为我们可以事先指定运行的子 进程数。可以用-p选项指定SOCKS以preforking模式运行。
inetd:和telnet等服务一样通过inetd超级服务器运行SOCKS
threaded:在linux平台上,我们推荐使用该模式运行SOCKS,这样能获得最佳 性能。
4. 超时问题
在一个客户会话空闲超过15分钟后,该会话将被断开,可以使用
SOCKS5_TIMEOUT 变量改变该值。
5. 绑定失败问题
有时候会出现Bind failed for xxx.xxx.xxx.xxx: ...的?nbs 在Linux上配置和实现SOCKS v5
三 : socks5代理服务器的配置
socks5代理服务器的配置
1.先在北大天网搜索一下socks5的安装包,发现一大堆,最新版本是socks5-v1.0r11.tar.gz,于是下载到我的RH9的服务器上。
2.解压缩软件包
#tar xvfz socks5-v1.0r11.tar.gz
3.开始编译
#cd socks5-v1.0r11
#./configure --with-threads
#make
#make install
4.建立/etc/socks5.conf,其实在软件包里已经有现成的examples
#cd examples
#cp socks5.conf.singlehomed /etc/socks5.conf (我们挑选一个最简单的配置文件)
默认配置就是
# A Socks5 Config file for a normal, single homed server
permit - - - - - -
这个配置文件是允许任何人都可以使用这个socks5代理,并不需要验证
如果想限制只是某个IP段(192.168.0.0/255.255.255.0)可以访问,可以改成
permit - - 192.168.0. - - -
或者只允许某个IP(192.168.0.10)可以访问使用,可以改成
permit - - 192.168.0.10 - - -
5.ok 运行一下socks5 -t 启动socks5服务,然后用QQ测试一下代理是否生效,记住默认端口是1080
反正我是在FTP软件和QQ上试了 都没问题。
6.如果要停止socks5,只要运行stopsocks -KILL就行,socks5就会停止!
7.使用非默认端口:如果你想让socks5服务启动的时候不启动默认监听端口1080,比如为1234,我们可以运行如下命令
socks5 -b 1234 -t 当然你关掉这个服务,就必须用下面的命令 stopsocks -p 1234 -KILL
8.我们来深入配置一下socks5.conf,使socks5使用用户验证机制
要使用用户验证,首先要建立/etc/socks5.pwsswd文件
内容为:(userA代表用户名。passwdA代表用户userA的密码)
#/etc/socks5.passwd
userA passwdA
userB passwdB
userC passwdC
然后修改/etc/socks5.conf
添加下列语句
auth - - u
或者把:
auth - - -改成auth - - u
添加:
把默认permit - - - - - - 改成permit u - 192.168.0. - - -
即允许来自192.168.0.0/255.255.255.0网段的任何经过用户认证的连接
如果你不想把密码文件存在默认的/etc/socks5.passwd里。想存在自定义的文件,比如/etc/qq.passwd
那就得修改/etc/socks5.conf.添加一项参数
set SOCKS5_PWDFILE /etc/qq.passwd
ok!重启一下服务,这时如果不输入正确的用户名和密码是使用不了socks5代理服务器的,输入正确的用户名和密码便可使用。
以上说的参数,大家可以结合使用,比如限制某个IP段使用socks5服务,而且要使用用户名验证
另外针对/etc/socks5.conf还有一些参数,大家就自己去研究吧
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
61阅读| 精彩专题| 最新文章| 热门文章| 苏ICP备13036349号-1