Linux(Ubuntu21)配置IPsec/L2TP 客户端

Linux(Ubuntu21)配置IPsec/L2TP 客户端插图

本人测试环境:VMware虚拟机,系统为Ubuntu21.04。仅供验证ipsec客户端功能参考!!!

一、验证服务器

可以先通过Windows10系统来连接测试是否可以连接到目标服务器,验证服务器是否正常。

Linux(Ubuntu21)配置IPsec/L2TP 客户端插图1

二、Ubuntu21.04配置IPsec/L2TP 客户端

1、下载并安装相关包

sudo apt-get install strongswan xl2tpd ppp lsof
sudo apt-get install strongswan xl2tpd ppp lsof
sudo apt-get install strongswan xl2tpd ppp lsof

2、配置

(1)配置ipsec

在/etc/ipsec.conf配置文件中追加内容(将right=右侧的服务器IP替换为对应VPN服务器地址,ike,esp对应算法需与服务器保持一致,一般默认):

conn myvpn auto=add keyexchange=ikev1 authby=secret type=transport left=%defaultroute leftprotoport=17/1701 rightprotoport=17/1701 right=服务器IP ike=aes128-sha1-modp2048 esp=aes128-sha1
conn myvpn auto=add keyexchange=ikev1 authby=secret type=transport left=%defaultroute leftprotoport=17/1701 rightprotoport=17/1701 right=服务器IP ike=aes128-sha1-modp2048 esp=aes128-sha1
conn myvpn auto=add keyexchange=ikev1 authby=secret type=transport left=%defaultroute leftprotoport=17/1701 rightprotoport=17/1701 right=服务器IP ike=aes128-sha1-modp2048 esp=aes128-sha1

在/etc/ipsec.secrets配置文件中追加以下内容(将密钥替换为对应的ipsec密钥):

: PSK "密钥"
: PSK "密钥"
: PSK "密钥"

配置完后修改权限

chmod 600 /etc/ipsec.secrets
chmod 600 /etc/ipsec.secrets
chmod 600 /etc/ipsec.secrets

(2)配置xl2tp

在/etc/xl2tpd/xl2tpd.conf配置文件中追加以下内容(lns对应的服务器IP替换为服务器地址):

[lac myvpn] lns = 服务器IP ppp debug = yes pppoptfile = /etc/ppp/options.l2tpd.client length bit = yes
[lac myvpn] lns = 服务器IP ppp debug = yes pppoptfile = /etc/ppp/options.l2tpd.client length bit = yes
[lac myvpn] lns = 服务器IP ppp debug = yes pppoptfile = /etc/ppp/options.l2tpd.client length bit = yes

创建 /etc/ppp/options.l2tpd.client文件,写入以下内容(将用户名、密码替换为对应信息):

ipcp-accept-local ipcp-accept-remote refuse-eap require-chap noccp noauth mtu 1280 mru 1280 noipdefault defaultroute usepeerdns connect-delay 5000 name "用户名" password "密码"
ipcp-accept-local ipcp-accept-remote refuse-eap require-chap noccp noauth mtu 1280 mru 1280 noipdefault defaultroute usepeerdns connect-delay 5000 name "用户名" password "密码"
ipcp-accept-local ipcp-accept-remote refuse-eap require-chap noccp noauth mtu 1280 mru 1280 noipdefault defaultroute usepeerdns connect-delay 5000 name "用户名" password "密码"

配置完后修改权限

chmod 600 /etc/ppp/options.l2tpd.client
chmod 600 /etc/ppp/options.l2tpd.client
chmod 600 /etc/ppp/options.l2tpd.client

三、开始链接

每次连接时,都需按照以下步骤进行。

(1)创建xl2tpd控制文件

mkdir -p /var/run/xl2tpd touch /var/run/xl2tpd/l2tp-control
mkdir -p /var/run/xl2tpd touch /var/run/xl2tpd/l2tp-control
mkdir -p /var/run/xl2tpd touch /var/run/xl2tpd/l2tp-control

(2)重启ipsec、xl2tpd服务

ipsec restart service xl2tpd restart
ipsec restart service xl2tpd restart
ipsec restart service xl2tpd restart

(3)连接ipsec

ipsec up myvpn
ipsec up myvpn
ipsec up myvpn

执行后会打印对应的状态信息,当最后一行打印如下信息时表示ipsec连接成功。

(4)连接L2TP

echo "c myvpn" > /var/run/xl2tpd/l2tp-control
echo "c myvpn" > /var/run/xl2tpd/l2tp-control
echo "c myvpn" > /var/run/xl2tpd/l2tp-control

连接后通过ifconfig查看状态,如果出现如下所示的ppp网卡,则表示L2TP连接正常。

Linux(Ubuntu21)配置IPsec/L2TP 客户端插图3

(5)断开连接

echo "d myvpn" > /var/run/xl2tpd/l2tp-control ipsec down myvpn
echo "d myvpn" > /var/run/xl2tpd/l2tp-control ipsec down myvpn
echo "d myvpn" > /var/run/xl2tpd/l2tp-control ipsec down myvpn

至此Ubuntu21.04当作IPsec/L2TP客户端连接到服务器已完成。实测有效,仅供参考,如有错误,欢迎指正!!!

原文链接:https://blog.csdn.net/caojia12345678/article/details/125197528

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享