Linux制作代理服务器
linux做代理服务器 最简单的做法,用RedHat9.0为例
以我的电脑为例子:因为我只装一块网卡所以我自己编辑了eth0:0现实中最好是两张网卡
eth0网卡地址设置
[root@xiaoye root]# vi /etc/sysconfig/network-scripts/ifcfg-eth0 根据自己情况设置按 a 可以编辑保存是 :wq
DEVICE=eth0
BOOTPROTO=static
BROADCAST=219.239.174.255
IPADDR=219.239.174.15
NETMASK=255.255.255.0
NETWORK=219.239.174.0
ONBOOT=yes
下面编辑eth0:0(注根据网卡自己的情况
[root@xiaoye root]# cat /etc/sysconfig/network-scripts/ifcfg-eth0 >/etc/sysconfig/network-scripts/ifcfg-eth0:0
这样eth0:0中的内容与eth0中的一样只需要把不对的改掉就行了
DEVICE=eth0:0
BOOTPROTO=static
BROADCAST=192.168.0.255
IPADDR=192.168.0.1
NETMASK=255.255.255.0
NETWORK=192.168.0.0
ONBOOT=yes
[root@xiaoye root]# ifconfig ---参看是否显示两张网卡IP地址以及是否与你的情况符合
更改下网关地址
HOSTNAME=xiaoye
GATEWAY=219.239.174.16 默认没有这条需要自己加下
DNS在[root@xiaoye root]# vi /etc/resolv.conf
nameserver 202.106.0.20
然后用route命令看看
[root@xiaoye root]# route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
219.239.174.0 * 255.255.255.0 U 0 0 0 eth0
169.168.0.0 * 255.255.0.0 U 0 0 0 eth0:0
127.0.0.0 * 255.0.0.0 U 0 0 0 lo
default 219.239.174.16 0.0.0.0 UG 0 0 0 eth0
iptables转发规则编辑下
[root@xiaoye root]# vi /etc/sysctl.conf
里面可以这样写:
net.ipv4.ip_forward=0 ------------将0改成1 启动转发功能(其他不动)
net.ipv4.conf.default.rp_filter=1
kernel.sysrq=0
[root@xiaoye root]# vi /etc/rc.d/rc.local ---这是在系统后自动加载相当与WINDOWS下我是这么理解的:)
iptables -F 关闭防火墙
iptables -F -t nat 建立一个规则 -t后面可以加(nat mangle filter)
iptables -t nat -A POSTROUTING -o eth0 -s 192.168.0.0/24 -j MASQUERADE --- 这条什么意思呢我按照理解跟大家说下
创建一个nat规则 POSTROUTING 是转送包之前先通过这个函数进行来源IP转换<SNAT> -o ==output -s ==source -j 参数用来指定要进行的处理动作 MASQUERADE改写来原IP伪装
echo 1>/proc/sys/net/ipv4/ip_forward 启动ip转发功能.
最后从起下reboot
大家可以试这个方法做下