当前位置:Linux教程 - Linux综合 - Linux下的VPN配置

Linux下的VPN配置

  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]