Я настроил strongswan с маршрутизатором Cisco со следующей конфигурацией:
config setup
uniqueids=never
ca default_ca
auto=add
conn %default
keyexchange=ikev1
type=tunnel
left=%any
auto=add
dpdaction=clear
margintime=0s
rekeyfuzz=20%
conn cisco-ezvpn
keyexchange=ikev1
left=10.0.1.2
leftid=lab
leftsourceip=%config
leftfirewall=yes
right=10.0.1.1
rightsubnet=0.0.0.0/0
xauth_identity=test
auto=add
leftauth2=xauth
xauth=client
aggressive=yes
leftauth=psk
rightauth=psk
ikelifetime=86000s
lifetime=86000s
ike=aes256-sha256-ecp256
esp=aes256-sha256
Но я обнаружил, что не весь трафик зашифрован.
- Если какая-либо программа, такая как ssh, уже подключена к удаленному серверу до запуска ipsec, эти соединения не будут использовать VPN-туннель, это можно увидеть из вывода tcpdump:
[root @ lorawan ~] # tcpdump -i eth0 tcpdump: подробный вывод подавлен, используйте -v или -vv для прослушивания полного декодирования протокола на eth0, тип канала EN10MB (Ethernet), размер захвата 262144 байта 22: 17: 54.407463 IP 10.0 .1.1> 10.0.1.2: ESP (spi = 0xc0920b53, seq = 0x4a), длина 184 22: 17: 59.454819 IP 10.0.1.2> 10.0.1.1: ESP (spi = 0x3ec810fd, seq = 0x97), длина 120 22:17: 59.455637 IP 10.0.1.1> 10.0.1.2: ESP (spi = 0xc0920b53, seq = 0x4c), длина 104 22: 17: 59.455637 IP 10.0.1.1> 10.10.0.0: ICMP 10.0.1.1 домен порта udp недоступен, длина 36 22: 17: 59.455787 IP 10.0.1.2> 10.0.1.1: ESP (spi = 0x3ec810fd, seq = 0x98), длина 120 22: 18: 01.000771 STP 802.1d, Config, Flags [none], идентификатор моста 8000.80: e0: 1d: 66: 2f: a2.8001, длина 43 22: 18: 03.000814 STP 802.1d, Config, флаги [нет], идентификатор моста 8000.80: e0: 1d: 66: 2f: a2.8001, длина 43 22:18: 04.738096 IP 10.0.1.2.33457> 10.0.1.1.5888: Flags [P.], seq 4216930160: 4216930182, ack 50432821, победа 17584, длина 22 22: 18: 04.738618 IP 10.0.1.1.5888> 10.0.1.2.33457: Флаги [.], След. 1:27, кв. 22, победа 3446, длина 26 22: 18: 04.738679 IP 10.0.1.2.33457> 10.0.1.1.5888: Флаги [.], Подтверждение 27, победа 17584, длина 0
Интерфейс по умолчанию: eth0, по-прежнему может быть доступен для внешнего процесса хоста, например, ssh:
[root @ lorawan ~] # tcpdump -i eth0 tcpdump: подробный вывод подавлен, используйте -v или -vv для прослушивания полного декодирования протокола на eth0, тип канала EN10MB (Ethernet), размер захвата 262144 байта 22: 24: 28.021347 IP 10.0 .1.2> 10.0.1.1: ESP (spi = 0x3ec810fd, seq = 0xa9), длина 120 22: 24: 28.169729 IP 10.0.1.1.36550> 10.0.1.2.ssh: Flags [P.], seq 156: 208, кв. 825, победа 2944, длина 52 22: 24: 28.170144 IP 10.0.1.2.ssh
10.0.1.1.36550: Flags [P.], seq 825: 893, ack 208, win 16616, длина 68 22: 24: 28.370727 IP 10.0.1.1.36550> 10.0.1.2.ssh: Flags [.], Ack 893 Победа 2876, длина 0
И мой экспедитор iptables выглядит нормально:
[root@lorawan ~]# iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
ACCEPT all -- anywhere 10.10.0.0 policy match dir in pol ipsec reqid 1 proto esp
ACCEPT udp -- anywhere anywhere udp dpt:domain
ACCEPT tcp -- anywhere anywhere tcp dpt:domain
ACCEPT tcp -- anywhere anywhere tcp dpt:bootps
ACCEPT udp -- anywhere anywhere udp dpt:bootps
Chain FORWARD (policy ACCEPT)
target prot opt source destination
ACCEPT all -- anywhere 10.10.0.0 policy match dir in pol ipsec reqid 1 proto esp
ACCEPT all -- 10.10.0.0 anywhere policy match dir out pol ipsec reqid 1 proto esp
ACCEPT all -- anywhere anywhere
ACCEPT all -- anywhere anywhere
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
ACCEPT all -- 10.10.0.0 anywhere policy match dir out pol ipsec reqid 1 proto esp
Мой вопрос: есть ли способ направить "ВСЕ трафика" в VPN?