แกแแขแฃแแชแแ
แฒแแกแแแแแแแก แแฆแ. แงแแแแก แแกแแแ. แกแขแฃแแแแขแแ แแแแแงแแ แ VPN แแแแจแแ แ แแ แฌแแ แขแแแก แจแแ แแก แแ แแแฃแฉแแแแ แแ. แแแแแฌแแแ: แแแแแแแแแ แแ แแก แแแแ แแแ, แแแแ แแ แแแแ แแแจแ แแแซแ แแแแ แแ แแ แแก. แกแขแฃแแแแขแ แแ แแแกแฃแฎแแแก แแแ แแแก.
แฉแแแแแแก แฉแแแกแแแ แแ แฉแแแงแแแแแแ S-Terra Gateway-แแก แแ แแแแแแแแแก แแแแแแ แแแแก. แแแแแแ แแ แฉแแแก แแแแแชแแแแแแแก แแ แแแแแแแแแแแแก.
Raw แแแแแชแแแแแ
แแแแแ แแคแแฃแแแ แแแจแแ แแแฃแแ แแ แ แฃแแแแ แแแแแแจแแ แแแฃแแแ GRE แแแแ แแแแ. GRE แฃแแแ แแงแแก แแแจแแคแ แฃแแ:
แแ แแแแแฌแแแ GRE แแแแ แแแแก แคแฃแแฅแชแแแแแ แแแแก. แแแแกแแแแแก แแ แแแฌแแ แแแแ แแแแแก R1 แแแฌแงแแแแแแแแแแ R2 แแแฌแงแแแแแแแแก GRE แแแขแแ แคแแแกแแแแ. แแก แแ แแก แแแจแแคแแ แแก แกแแแแแแ แขแ แแคแแแ. แฒแแกแฃแฎแแก แแแ แแจแ:
root@R1:~# ping 1.1.1.2 -c 4
PING 1.1.1.2 (1.1.1.2) 56(84) bytes of data.
--- 1.1.1.2 ping statistics ---
4 packets transmitted, 0 received, 100% packet loss, time 3057ms
แแ แแฃแงแฃแ แแ แแฃแ แแแแแแก Gate1-แแ แแ Gate2-แแ. แแฃแ แแแแ แกแแแแแแแแแแ แแขแงแแแแแแแ, แ แแ IPsec แแแแ แแแ แฌแแ แแแขแแแแ แแแแฅแแแแแ, แแ แแแแแ แ แแ แแแแแแ:
root@Gate1:~# cat /var/log/cspvpngate.log
Aug 5 16:14:23 localhost vpnsvc: 00100119 <4:1> IPSec connection 5 established, traffic selector 172.17.0.1->172.16.0.1, proto 47, peer 10.10.10.251, id "10.10.10.251", Filter
IPsec:Protect:CMAP:1:LIST, IPsecAction IPsecAction:CMAP:1, IKERule IKERule:CMAP:1
Gate1-แแ IPsec แแแแ แแแแก แกแขแแขแแกแขแแแแจแ แแฎแแแแ, แ แแ แแแแแแแแแ แแ แแก แแแแ แแแ, แแแแ แแ Rัvd แแ แแชแฎแแแแ แแแแแขแแแ แแฃแแแ แแฃแแแแแ:
root@Gate1:~# sa_mgr show
ISAKMP sessions: 0 initiated, 0 responded
ISAKMP connections:
Num Conn-id (Local Addr,Port)-(Remote Addr,Port) State Sent Rcvd
1 3 (10.10.10.251,500)-(10.10.10.252,500) active 1070 1014
IPsec connections:
Num Conn-id (Local Addr,Port)-(Remote Addr,Port) Protocol Action Type Sent Rcvd
1 3 (172.16.0.1,*)-(172.17.0.1,*) 47 ESP tunn 480 0
แแ แแกแ แแแฌแฃแฎแแแก S-Terra: แแแซแแ แกแแ แแแแ แแแแ แกแแแแแแ แแแแแขแแแ R1-แแแ R2-แแแ แแแแแ. แแ แแชแแกแจแ (แกแแแแแแ แ) แจแแชแแแแแก แแแแแแ.
แฒแแแแแแกแขแแแ
แแแแแฏแ 1. แ แแก แแฆแแแก Gate1 R1-แแแ
แแ แแแงแแแแ แฉแแจแแแแแฃแ แแแแแขแแแแก แกแแแคแแ แก - tcpdump. แกแแแแคแแ แก แแฃแจแแแ แจแแแ (Gi0/1 Cisco-แก แแกแแแแกแ แแแขแแชแแแ แแ eth1 Debian OS-แแก แแแขแแชแแแจแ) แแแขแแ แคแแแกแแ:
root@Gate1:~# tcpdump -i eth1
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes
14:53:38.879525 IP 172.16.0.1 > 172.17.0.1: GREv0, key=0x1, length 92: IP 1.1.1.1 > 1.1.1.2: ICMP echo request, id 2083, seq 1, length 64
14:53:39.896869 IP 172.16.0.1 > 172.17.0.1: GREv0, key=0x1, length 92: IP 1.1.1.1 > 1.1.1.2: ICMP echo request, id 2083, seq 2, length 64
14:53:40.921121 IP 172.16.0.1 > 172.17.0.1: GREv0, key=0x1, length 92: IP 1.1.1.1 > 1.1.1.2: ICMP echo request, id 2083, seq 3, length 64
14:53:41.944958 IP 172.16.0.1 > 172.17.0.1: GREv0, key=0x1, length 92: IP 1.1.1.1 > 1.1.1.2: ICMP echo request, id 2083, seq 4, length 64
แแ แแฎแแแแ, แ แแ Gate1 แแฆแแแก GRE แแแแแขแแแก R1-แแแ. แแ แแแแ แซแแแแ.
แแแแแฏแ 2. แ แแก แแแแแแแก Gate1 GRE แแแแแขแแแแ
klogview แฃแขแแแแขแแก แแแแแงแแแแแแ แแ แจแแแแซแแแ แแแแฎแ, แ แ แฎแแแแ GRE แแแแแขแแแแแ S-Terra VPN แแ แแแแแ แแก แจแแแแแ:
root@Gate1:~# klogview -f 0xffffffff
filtration result for out packet 172.16.0.1->172.17.0.1, proto 47, len 112, if eth0: chain 4 "IPsecPolicy:CMAP", filter 8, event id IPsec:Protect:CMAP:1:LIST, status PASS
encapsulating with SA 31: 172.16.0.1->172.17.0.1, proto 47, len 112, if eth0
passed out packet 10.10.10.251->10.10.10.252, proto 50, len 160, if eth0: encapsulated
แแ แแฎแแแแ, แ แแ แกแแแแแแ GRE แขแ แแคแแแ (แแ แแขแ 47) 172.16.0.1 -> 172.17.0.1 แแแแฅแชแ LIST แแแจแแคแแ แแก แฌแแกแแก แฅแแแจ CMAP แแ แแแขแ แ แฃแฅแแจแ แแ แแงแ แแแคแกแฃแแแ แแแฃแแ. แจแแแแแแ, แแแแแขแ แแงแ แแแ แจแ แฃแขแแ แแแฃแแ (แแแแแกแฃแแ). klogview แแแแแแแแแแจแ แกแแแแกแฃแฎแ แขแ แแคแแแ แแ แแ แแก.
แแ แแแแแฌแแแ แฌแแแแแแก แกแแแแก Gate1 แแแฌแงแแแแแแแแแ. แแ แแฎแแแแ แแ แแ แฌแแแแแแก แกแแแก LIST, แ แแแแแแช แแแแกแแแฆแแ แแแก แแแแแแแ แแ แขแ แแคแแแก แแแจแแคแแ แแกแแแแก, แ แแช แแแจแแแแก, แ แแ firewall-แแก แฌแแกแแแ แแ แแ แแก แแแแคแแแฃแ แแ แแแฃแแ:
Gate1#show access-lists
Extended IP access list LIST
10 permit gre host 172.16.0.1 host 172.17.0.1
แแแกแแแแ: แแ แแแแแแ แแ แแ แแก Gate1 แแแฌแงแแแแแแแแจแ.
แแแขแ klogview-แแก แจแแกแแฎแแ
VPN แแ แแแแแ แ แแแ แแแแก แฅแกแแแแก แแแแ แขแ แแคแแแก แแ แแ แ แแฎแแแแ แแ แขแ แแคแแแก, แ แแแแแแช แฃแแแ แแงแแก แแแจแแคแ แฃแแ. แแก แแ แแก แจแแขแงแแแแแแแแแ, แ แแแแแแแช แฉแแแก klogview-แจแ, แแฃ VPN แแ แแแแแ แ แแแแแฃแจแแแแแก แฅแกแแแแก แขแ แแคแแแก แแ แแแแแกแชแแแก แแแก แแแจแแคแ แฃแแแ:
root@R1:~# ping 172.17.0.1 -c 4
root@Gate1:~# klogview -f 0xffffffff
filtration result for out packet 172.16.0.1->172.17.0.1, proto 1, len 84, if eth0: chain 4 "IPsecPolicy:CMAP": no match
passed out packet 172.16.0.1->172.17.0.1, proto 1, len 84, if eth0: filtered
แแฎแแแแ, แ แแ ICMP แขแ แแคแแแ (แแ แแขแ 1) 172.16.0.1->172.17.0.1 แแ แแงแ แฉแแ แแฃแแ (แแ แแแแฎแแแแ) CMAP แแ แแแขแ แแแ แแแแก แแแจแแคแแ แแก แฌแแกแแแจแ. แแแแแขแ แแแแแชแแแฃแแ แแงแ (แแแแแกแฃแแ) แแแแคแแ แขแแฅแกแขแแ.
แแแแแฏแ 3. แ แแก แแฆแแแก Gate2 Gate1-แแกแแแ
แแ แแแแฃแจแแ แกแแแแคแแ แ WAN (eth0) Gate2 แแแขแแ แคแแแกแแ:
root@Gate2:~# tcpdump -i eth0
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 262144 bytes
16:05:45.104195 IP 10.10.10.251 > 10.10.10.252: ESP(spi=0x30088112,seq=0x1), length 140
16:05:46.093918 IP 10.10.10.251 > 10.10.10.252: ESP(spi=0x30088112,seq=0x2), length 140
16:05:47.117078 IP 10.10.10.251 > 10.10.10.252: ESP(spi=0x30088112,seq=0x3), length 140
16:05:48.141785 IP 10.10.10.251 > 10.10.10.252: ESP(spi=0x30088112,seq=0x4), length 140
แแ แแฎแแแแ, แ แแ Gate2 แแฆแแแก ESP แแแแแขแแแก Gate1-แแแ.
แแแแแฏแ 4. แ แแก แแแแแแแก Gate2 ESP แแแแแขแแแแ
แแ แแฎแกแแ klogview แแ แแแ แแแแก Gate2-แแ:
root@Gate2:~# klogview -f 0xffffffff
filtration result for in packet 10.10.10.251->10.10.10.252, proto 50, len 160, if eth0: chain 17 "FilterChain:L3VPN", filter 21, status DROP
dropped in packet 10.10.10.251->10.10.10.252, proto 50, len 160, if eth0: firewall
แแ แแฎแแแแ, แ แแ ESP แแแแแขแแแ (แแ แแขแ 50) แฉแแแแแจแแแ (DROP) firewall แฌแแกแแ (L3VPN). แแ แแแ แฌแแฃแแแแฃแแ แแแ , แ แแ Gi0/0-แก แแฅแแก แแแกแแ แแแ แแฃแแ L3VPN แฌแแแแแแก แกแแ:
Gate2#show ip interface gi0/0
GigabitEthernet0/0 is up, line protocol is up
Internet address is 10.10.10.252/24
MTU is 1500 bytes
Outgoing access list is not set
Inbound access list is L3VPN
แแ แแฆแแแแแฉแแแ แแ แแแแแแ.
แแแแแฏแ 5. แ แ แแ แแก แแ แแกแฌแแ แ แฌแแแแแแก แกแแแจแ
แแ แแฃแงแฃแ แแ แ แ แแ แแก L3VPN แฌแแแแแแก แกแแ:
Gate2#show access-list L3VPN
Extended IP access list L3VPN
10 permit udp host 10.10.10.251 any eq isakmp
20 permit udp host 10.10.10.251 any eq non500-isakmp
30 permit icmp host 10.10.10.251 any
แแ แแฎแแแแ, แ แแ ISAKMP แแแแแขแแแ แแแแแแแ แแฃแแแ, แแแแขแแ แจแแแฅแแแ IPsec แแแแ แแแ. แแแแ แแ แแ แแ แกแแแแแก แแแแแซแแแแ แแแแแ แฌแแกแ ESP-แกแแแแก. แ แแแแ แช แฉแแแก, แกแขแฃแแแแขแแ แแแ แแ icmp แแ esp.
แฌแแแแแแก แกแแแก แ แแแแฅแขแแ แแแ:
Gate2(config)#
ip access-list extended L3VPN
no 30
30 permit esp host 10.10.10.251 any
แแแแแฏแ 6. แคแฃแแฅแชแแแแแ แแแแก แจแแแแฌแแแแ
แฃแแแ แแแแแก แงแแแแแกแ, แแ แแแ แฌแแฃแแแแฃแแ แแแ , แ แแ L3VPN แฌแแแแแแก แกแแ แกแฌแแ แแ:
Gate2#show access-list L3VPN
Extended IP access list L3VPN
10 permit udp host 10.10.10.251 any eq isakmp
20 permit udp host 10.10.10.251 any eq non500-isakmp
30 permit esp host 10.10.10.251 any
แแฎแแ แแ แแแฌแงแแ แกแแแแแแ แขแ แแคแแแก R1 แแแฌแงแแแแแแแแแแ:
root@R1:~# ping 1.1.1.2 -c 4
PING 1.1.1.2 (1.1.1.2) 56(84) bytes of data.
64 bytes from 1.1.1.2: icmp_seq=1 ttl=64 time=35.3 ms
64 bytes from 1.1.1.2: icmp_seq=2 ttl=64 time=3.01 ms
64 bytes from 1.1.1.2: icmp_seq=3 ttl=64 time=2.65 ms
64 bytes from 1.1.1.2: icmp_seq=4 ttl=64 time=2.87 ms
--- 1.1.1.2 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3006ms
rtt min/avg/max/mdev = 2.650/10.970/35.338/14.069 ms
แแแแแ แฏแแแแ. GRE แแแแ แแแ แจแแแฅแแแ. IPsec แกแขแแขแแกแขแแแแจแ แจแแแแแแแแแ แขแ แแคแแแแก แแ แแชแฎแแแแ แแ แแ แแก แแฃแแ:
root@Gate1:~# sa_mgr show
ISAKMP sessions: 0 initiated, 0 responded
ISAKMP connections:
Num Conn-id (Local Addr,Port)-(Remote Addr,Port) State Sent Rcvd
1 3 (10.10.10.251,500)-(10.10.10.252,500) active 1474 1350
IPsec connections:
Num Conn-id (Local Addr,Port)-(Remote Addr,Port) Protocol Action Type Sent Rcvd
1 4 (172.16.0.1,*)-(172.17.0.1,*) 47 ESP tunn 1920 480
Gate2 แแแ แแแญแแแ, klogview แแแแแแแแแแแ, แแแแแฉแแแ แจแแขแงแแแแแแแแแ, แ แแ แกแแแแแแ แขแ แแคแแแ 172.16.0.1->172.17.0.1 แฌแแ แแแขแแแแ แแงแ แแแจแแคแ แฃแแ (PASS) LIST แฌแแกแแ CMAP แแ แแแขแ แ แฃแแแแ:
root@Gate2:~# klogview -f 0xffffffff
filtration result for in packet 172.16.0.1->172.17.0.1, proto 47, len 112, if eth0: chain 18 "IPsecPolicy:CMAP", filter 25, event id IPsec:Protect:CMAP:1:LIST, status PASS
passed in packet 172.16.0.1->172.17.0.1, proto 47, len 112, if eth0: decapsulated
แจแแแแแแแ
แกแขแฃแแแแขแแ แแแกแแแแแแแก แแฆแ แแแแคแฃแญแ.
แคแ แแฎแแแแ แแงแแแแ ME-แก แฌแแกแแแแแ.
แแแแแแแฃแ แ แแแแแแแ แ
t.me/anonymous_engineer
แฌแงแแ แ: www.habr.com