1、找到软件 我用的软件是pptpd-1.1.4-b3.tar,不知道为什么,这里不让上传gz文件 2、安装 解压后, ./configure make make install 3、配置文件 vi /etc/pptpd.conf 代码: speed 115200 option /etc/ppp/options debug #localip 192.168.0.1 这句好象没什么用,我注释了 remoteip 192.168.0.20-30 这句是分配IP的,但不知道为什么,CLIENT的IP不按这个分配 :cry: enable chap 起用chap机制 vi /etc/ppp/options 代码: lock debug # name platinum.com.cn 这个有没有都可以 bsdcomp 0 auth require-chap 用chap认证方式 proxyarp # ms-dns 202.106.196.152 这个应该是给CLIENT重新分配DNS的,但好象没用,也没删,就先留着了 vi /etc/ppp/chap-secrets 这是定义CLIENT密码的部分 代码: # Secrets for authentication using PAP # client server secret IP addresses "platinum" * "vpntest" 192.168.0.10 OK,到这里就配置完成了,运行pptpd启动服务 先关掉防火墙测试,CLIENT:WIN2000 建立VPN拨号,然后指定IP,61.149.xx.xx 注意:在属性编辑里,不要选用加密,否则连不上(好象要下MS的MSCHAP补丁才可以,我没找到) 连接,测试通过 引用: [root@platinum ppp]# netstat -amore Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 *:1723 *:* LISTEN tcp 0 0 61.149.6.131:1723 202.204.224.130:1164 ESTABLISHED raw 0 0 61.149.6.131:gre 202.204.224.130:* 1 内容略有删节 注意:外部IP,202.204.224.130已经连接,VPN端口:1723 此外还有一个GRE,协议名称非TCP、UDP、ICMP!!! 这是VPN的主要传输协议,所以要配置防火墙,一定要开这个 4、配置防火墙 我的FIREWALL代码如下: 代码: #! /bin/bash #初始设置,允许内网转发 echo 1 > /proc/sys/net/ipv4/ip_forward /sbin/iptables -F -t filter /sbin/iptables -F -t nat /sbin/iptables -P INPUT ACCEPT /sbin/iptables -P OUTPUT ACCEPT /sbin/iptables -P FORWARD ACCEPT /sbin/iptables -t nat -P PREROUTING ACCEPT /sbin/iptables -t nat -P POSTROUTING ACCEPT /sbin/iptables -t nat -P OUTPUT ACCEPT # 允许内网所有IP做所有事情 /sbin/iptables -A INPUT -s 192.168.0.0/24 -j ACCEPT # 打开FTP端口:211 /sbin/iptables -A INPUT -p tcp --dport 211 -j ACCEPT # 打开VPN端口1723,还有GRE!!! /sbin/iptables -A INPUT -p tcp --dport 1723 -j ACCEPT /sbin/iptables -A INPUT -p gre -j ACCEPT # WWW:801,SWAT:901 /sbin/iptables -A INPUT -p tcp --dport 801 -j ACCEPT /sbin/iptables -A INPUT -p tcp --dport 901 -j ACCEPT # SOCKS5:8039 /sbin/iptables -A INPUT -p tcp --dport 8039 -j ACCEPT # ICMP(PING) # 这句话是允许除了公网上所有IP的ICMP协议的echo-request标志 # 也就是允许网内机器PING,但不向外发PONG /sbin/iptables -A INPUT -p icmp --icmp-type ! echo-request -j ACCEPT # NAT /sbin/iptables -t nat -A POSTROUTING -o ppp0 -s 192.168.0.0/24 -j MASQUERADE # DENY OTHERS # 这句很关键,做IP地址的主动连接状态设置,避免了以往防火墙的漏洞 /sbin/iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT # 其余未登记的端口全部DROP掉! /sbin/iptables -A INPUT -j DROP 当然,从我的FIREWALL还可以看出,我还配置了其他服务,我添加了SAMBA服务,不登陆VPN,是无法访问的。自此,VPN+IPTABLES+SAMBA+FTP+WWW+SOCKS5配置完成你可以对自己的机器再添加其他服务,想对外开端口,改FIREWALL即可 。
[1] [2] 下一页
(出处:http://www.sheup.com)
上一页 [1] [2]