Linux下VPN服务器的搭建

  • A+
所属分类:linux服务器应用
摘要

在Linux下搭建VPN服务器,实验环境以一台CentOS 5.5 64位系统为例:

在Linux下搭建VPN服务器,实验环境以一台CentOS 5.5 64位系统为例:

1、 检查服务器是否支持PPTP:

# modprobe ppp-compress-18 && echo ok

如果命令执行后返回的结果为OK,表示成功通过。

还需要执行另外一条命令:

# cat /dev/net/tun

如果返回的结果为cat: /dev/net/tun: File descriptor in bad state,则表示通过。

如果上面两条命令都能成功通过,则可以安装PPTP。

2、 安装PPP和iptables,默认情况下,系统已经安装好iptables。不过也可以一起检查下:

#yum install -y ppp iptables

如果已经安装,则系统会提示。

3、 安装PPTP,此软件需要下载安装,安装选择RPM包,注意有32位和64位之分,所以下载的时候要根据系统实际情况下载安装,否则,安装不会成功。这里分别提供32位和64位PPTP包的下载地址:

32位:#wget http://acelnmp.googlecode.com/files/pptpd-1.3.4-1.rhel5.1.i386.rpm

64位:#wget http://acelnmp.googlecode.com/files/pptpd-1.3.4-1.rhel5.1.x86_64.rpm

然后,安装RPM包:

32位:#rpm -ivh pptpd-1.3.4-1.rhel5.1.i386.rpm

64位:#rpm -ivh pptpd-1.3.4-1.rhel5.1.x86_64.rpm

4、 更改PPTP的配置文件。找到配置文件并进行编辑:

#vim /etc/pptpd.conf

找到“locapip”和“remoteip”这两个配置项,将前面#去掉,将后面的IP地址更改为自己需要IP,locapip表示服务器的IP地址,remoteip表示客户端连到服务器上将会被分配的IP地址范围。

localip 192.168.6.150

remoteip 192.168.10.234-238,192.168.0.245

改完后,保存退出文件。

再编辑文件/etc/ppp/options.pptpd。

samba案例配置及自动挂载

rpm安装所需包:perl-Convert-ASN1(依赖包)、samba(服务进程)、samba-common(配置文件),samba-client(smb-client客户端)

# vi /etc/ppp/options.pptpd

在末尾添加DNS地址:

ms-dns 202.96.128.86

ms-dns 202.96.128.112

保存退出文件。

5、 为需要连接的客户端添加账号和密码,编辑文件/etc/ppp/chap-secrets:

# vi /etc/ppp/chap-secrets

此文件需要按照格式填写,“用户名 pptpd 密码 *”:

linux pptpd 123456 *

也可以多个账号,一行为一个账号。

6、 修改内核文件,使系统能支持转发:

#vi /etc/sysctl.conf

将net.ipv4.ip_forward = 0中的0改为1就OK了。

然后执行下列命令,使其生效:

#sysctl –p

7、 需要为防火墙添加一条规则:

#iptables -t nat -A POSTROUTING -s 192.168.6.0/24 -o eth0 -j MASQUERADE

#iptables -A INPUT -p tcp --dport 1723 -j ACCEPT

这里的IP段应设置为前面配置文件locapip中设置的IP段,而且要看你的外网卡接口是否是eth0。

然后保存配置并且重启防火墙服务:

#/etc/init.d/iptables save

# service iptables restart

8.重启PPTP服务:

#/etc/init.d/pptpd restart

除非注明,否则均为@蒲公英博客原创文章,转载必须以链接形式标明本文链接

本文链接:https://www.aipgy.com/29089.html

  • 我的微信
  • 这是我的微信扫一扫
  • weinxin
  • 我的微信公众号
  • 我的微信公众号扫一扫
  • weinxin
avatar

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: