我尝试使用 StrongSwan 在公共互联网上设置根服务器,将其用作 VPN 服务器。计划是通过此服务器为某些设备传输所有互联网流量。我还为其设置了一个 OpenVPN 服务器,它运行良好,但某些设备仅支持 IPSec,所以我也需要它,所以请不要提示使用 OpenVPN ;) 我面临的问题是客户端和服务器之间的通信导致超时,与我使用的客户端无关。在尝试连接的服务器日志中,我收到很多这样的消息:
Feb 22 16:05:30 htzsv001 charon: 14[IKE] retransmit 5 of request with message ID 0
在客户端上,我要么什么都没收到,要么收到错误 0x2027,根据我在互联网上找到的信息,该错误表示超时。主要用例是将 FritzBox 路由器与 VPN 连接,因此让我在这里展示该配置,尽管其他配置显然看起来不同,而且由于我在所有设备上都遇到了这个问题,我认为这是一个更普遍的问题或与服务器配置有关的问题。
服务器配置:
# ipsec.conf - strongSwan IPsec configuration file
config setup
conn %default
left=VPN Server fqdn
leftsubnet=0.0.0.0
authby=secret
auto=start
conn avm2swan
ike=aes256-sha-modp1024
esp=aes256-sha1-modp1024
right=DynDNS Of my Home
rightid=DynDNS Of my Home
rightsubnet=192.168.0.0/24
ikelifetime=3600s
keylife=3600s
在 FritzBox 上我导入了以下配置:
vpncfg {
connections {
enabled = yes;
editable = no;
conn_type = conntype_lan;
name = Server fqdn;
boxuser_id = 0;
always_renew = yes;
reject_not_encrypted = no;
dont_filter_netbios = yes;
localip = 0.0.0.0;
local_virtualip = 0.0.0.0;
remoteip = 0.0.0.0;
remote_virtualip = 0.0.0.0;
remotehostname = Server fqdn;
keepalive_ip = 0.0.0.0;
localid {
fqdn = DynDNS Of my Home;
}
remoteid {
fqdn = Server Hostname;
}
mode = phase1_mode_idp;
phase1ss = "all/all/all";
keytype = connkeytype_pre_shared;
key = "Password set in ipsec.secrets";
cert_do_server_auth = no;
use_nat_t = yes;
use_xauth = no;
use_cfgmode = no;
phase2localid {
ipnet {
ipaddr = 192.168.0.0;
mask = 255.255.255.0;
}
}
phase2remoteid {
ipnet {
ipaddr = Server IP;
mask = 255.255.255.192;
}
}
phase2ss = "esp-all-all/ah-none/comp-all/pfs";
accesslist = "permit ip any 192.168.0.0 255.255.255.0";
}
ike_forward_rules = "udp 0.0.0.0:500 0.0.0.0:500",
"udp 0.0.0.0:4500 0.0.0.0:4500";
}
我绝对不确定的是
mask = 255.255.255.192;
在 phase2remoteid 部分,我只输入了 ifconfig 为服务器接口提供的网络掩码,也许应该是 0.0.0.0?其他一切对我来说看起来都很合理,但也许我在这里有一些更大的误解?