HCRM博客

CentOS一键配置VPN教程指南

一、安装前准备

1、系统要求:CentOS 7 及以上版本,内存至少 128MB,具备 root 权限或使用sudo 提权。

2、更新系统:确保系统软件包是最新的。

CentOS一键配置VPN教程指南-图1
(图片来源网络,侵权删除)
  • yum update y

3、安装 EPEL(Extra Packages for Enterprise Linux)库:EPEL 库提供了额外的软件包,对于安装一些必要的软件非常重要。

  • yum install epelrelease y

二、选择 VPN 协议并安装

1. OpenVPN 安装步骤

1、安装 OpenVPN

  • yum install epelrelease y
  • yum install openvpn y

2、生成服务器证书和密钥

  • makecadir ~/openvpnca
  • cd ~/openvpnca
  • easyrsa initpki
  • easyrsa buildca
  • easyrsa genreq server nopass
  • easyrsa signreq server server
  • cp pki/ca.crt pki/private/ca.key pki/issued/server.crt pki/private/server.key /etc/openvpn/

3、配置 OpenVPN

编辑/etc/openvpn/server.conf 文件,添加以下内容(根据实际情况修改 IP 地址):

  • port 1194
  • proto udp
  • dev tun
  • ca ca.crt
  • cert server.crt
  • key server.key
  • dh dh2048.pem
  • server 10.8.0.0 255.255.255.0
  • ifconfigpoolpersist ipp.txt
  • keepalive 10 120
  • persistkey
  • persisttun
  • status openvpnstatus.log
  • verb 3

4、启动 OpenVPN

  • systemctl start openvpn@server
  • systemctl enable openvpn@server

2. L2TP/IPSec VPN 安装步骤

1、安装相关软件包

  • yum install xl2tpd ppp ipsecmodxfrm y

2、修改 PSK(PreShared Key)文件

编辑/etc/sysconfig/ipsec 文件,添加或修改预共享密钥:

  • vim /etc/sysconfig/ipsec
  • PSK="your_psk_here"

3、配置 IPSec

编辑/etc/ipsec.conf 文件,添加以下内容以启用 NAT 遍历:

  • nat_traversal=yes
  • include /etc/ipsec.d/*.conf

4、创建 IPSec 配置文件

/etc/ipsec.d/ 目录下创建一个新的配置文件l2tp_psk.conf

  • conn L2TPPSKNAT
  • rightsubnet=vhost:%priv,vhost%home,!0.0.0.0/0
  • also=L2TPPSKnoNAT
  • conn L2TPPSKnoNAT
  • authby=secret
  • pfs=no
  • auto=add
  • keyingtries=3
  • dpddelay=30
  • dpdtimeout=120
  • dpdaction=clear
  • rekey=no
  • ikelifetime=8h
  • keylife=1h
  • type=transport
  • left=10.0.8.12
  • leftprotoport=17/1701
  • right=%any
  • rightprotoport=17/%any

5、创建预共享密钥文件

/etc/ipsec.d/ 目录下创建一个新的密钥文件ipsec.secrets

  • 10.0.8.12 %any: PSK "your_psk_here"

6、调整内核参数

编辑/etc/sysctl.conf 文件,确保以下参数被正确设置:

  • vm.swappiness = 0
  • net.ipv4.ip_forward = 1
  • net.ipv4.conf.all.arp_announce = 2
  • net.ipv4.conf.all.promote_secondaries = 1
  • net.ipv4.conf.all.rp_filter=0
  • net.ipv4.conf.default.accept_redirects = 0
  • net.ipv4.conf.default.accept_source_route = 0
  • net.ipv4.conf.default.arp_announce = 2
  • net.ipv4.conf.default.promote_secondaries = 1
  • net.ipv4.conf.default.rp_filter=0
  • net.ipv4.conf.default.send_redirects = 0
  • net.ipv4.conf.lo.arp_announce = 2
  • net.ipv6.conf.all.disable_ipv6 = 0
  • net.ipv6.conf.default.disable_ipv6 = 0
  • net.ipv6.conf.lo.disable_ipv6 = 0

7、重启服务并应用配置

  • systemctl restart ipsec
  • systemctl restart xl2tpd
  • sysctl p

三、配置防火墙

1、开放 UDP 1701 端口:为了使 L2TP 正常工作,需要开放 UDP 1701 端口:

  • firewallcmd permanent zone=public addport=1701/udp
  • firewallcmd reload

四、测试连接

1、查看 IPSec 状态:确保 IPSec 运行正常:

  • ipsec status

2、查看 IPSec 验证结果:检查 IPSec 配置是否正确:

  • ipsec verify

3、连接测试:使用支持 L2TP/IPSec 的客户端(如 Windows、macOS)连接到 VPN,使用默认的用户名和密码进行测试,如果一切配置正确,应该能够成功连接。

五、常见问题解答(FAQs)

Q1: 无法连接到 L2TP VPN,提示认证失败?

A1: 确保预共享密钥(PSK)在服务器和客户端上一致,检查/etc/sysconfig/ipsec 文件中的 PSK 设置,并在客户端配置中输入相同的密钥,确认防火墙规则允许 UDP 1701 端口的流量通过。

Q2: OpenVPN 连接后无法访问互联网?

A2: 确保 OpenVPN 配置文件中的路由设置正确,通常需要在客户端配置文件中添加push "redirectgateway def1 bypassdhcp",并在服务器配置文件中添加相应的推送指令,检查客户端和服务器之间的网络连接是否正常。

本站部分图片及内容来源网络,版权归原作者所有,转载目的为传递知识,不代表本站立场。若侵权或违规联系Email:zjx77377423@163.com 核实后第一时间删除。 转载请注明出处:https://blog.huochengrm.cn/pc/14177.html

分享:
扫描分享到社交APP
上一篇
下一篇