Linux: Ubuntu 18.04.4 LTS (GNU/Linux 4.15.0-91-generic x86_64)
- Eth0 1.1.1.1/32 Π²Π½Π΅ΡΠ½ΠΈΠΉ IP
- ipip-ipsec0 192.168.0.1/30 Π±ΡΠ΄Π΅Ρ Π½Π°Ρ ΡΡΠ½Π½Π΅Π»Ρ
Miktoik: CCR 1009, RouterOS 6.46.5
- Eth0 10.0.0.2/30 Π²Π½ΡΡΡΠ΅Π½Π½ΠΈΠΉ IP ΠΎΡ ΠΏΡΠΎΠ²Π°ΠΉΠ΄Π΅ΡΠ°. ΠΠ½Π΅ΡΠ½ΠΈΠΉ IP NAT ΠΏΡΠΎΠ²Π°ΠΉΠ΄Π΅ΡΠ° Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠΉ.
- ipip-ipsec0 192.168.0.2/30 Π±ΡΠ΄Π΅Ρ Π½Π°Ρ ΡΡΠ½Π½Π΅Π»Ρ
IPsec ΡΡΠ½Π½Π΅Π»Ρ Π½Π° Linux ΠΌΠ°ΡΠΈΠ½Π΅ Π±ΡΠ΄Π΅ΠΌ ΠΏΠΎΠ΄Π½ΠΈΠΌΠ°ΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ racoon. ΠΠ΅ Π±ΡΠ΄Ρ ΠΎΠΏΠΈΡΡΠ²Π°ΡΡ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎΡΡΠΈ, Π΅ΡΡΡ Ρ
ΠΎΡΠΎΡΠ°Ρ
Π£ΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ ΠΏΠ°ΠΊΠ΅ΡΡ:
sudo install racoon ipsec-tools
ΠΠ°ΡΡΡΠ°ΠΈΠ²Π°Π΅ΠΌ racoon, ΠΎΠ½ ΡΡΠ»ΠΎΠ²Π½ΠΎ Π±ΡΠ΄Π΅Ρ Π²ΡΡΡΡΠΏΠ°ΡΡ Π² ΡΠΎΠ»ΠΈ ipsec ΡΠ΅ΡΠ²Π΅ΡΠ°. Π’Π°ΠΊ ΠΊΠ°ΠΊ mikrotik Π² main ΡΠ΅ΠΆΠΈΠΌΠ΅ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠ΅ΡΠ΅Π΄Π°Π²Π°ΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°, Π° Π²Π½Π΅ΡΠ½ΠΈΠΉ ip Π°Π΄ΡΠ΅Ρ ΡΠ΅ΡΠ΅Π· ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΠ½ ΠΊΠΎΠ½Π½Π΅ΠΊΡΠΈΡΡΡ ΠΊ Linux Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠΉ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ preshared key (Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΡ ΠΏΠΎ ΠΏΠ°ΡΠΎΠ»Ρ) Π½Π΅ ΠΏΠΎΠ»ΡΡΠΈΡΡΡ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΏΠ°ΡΠΎΠ»Ρ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠΎΠΏΠΎΡΡΠ°Π²Π»ΡΡΡΡΡ Π»ΠΈΠ±ΠΎ Ρ ip Π°Π΄ΡΠ΅ΡΠΎΠΌ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°ΡΡΠ΅Π³ΠΎΡΡ Ρ ΠΎΡΡΠ°, Π»ΠΈΠ±ΠΎ Ρ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΎΠΌ.
ΠΡΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΡ ΠΏΠΎ RSA ΠΊΠ»ΡΡΠ°ΠΌ.
ΠΠ΅ΠΌΠΎΠ½ racoon ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΊΠ»ΡΡΠΈ Π² ΡΠΎΡΠΌΠ°ΡΠ΅ RSA, Π° mikrotik β Π² ΡΠΎΡΠΌΠ°ΡΠ΅ PEM. ΠΡΠ»ΠΈ Π³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°ΡΡ ΠΊΠ»ΡΡΠΈ ΡΡΠΈΠ»ΠΈΡΠΎΠΉ plainrsa-gen ΠΈΠ΄ΡΡΠ΅ΠΉ Π²ΠΌΠ΅ΡΡΠ΅ Ρ racoon, ΡΠΎ ΠΊΠΎΠ½Π²Π΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΡΠ±Π»ΠΈΡΠ½ΡΠΉ ΠΊΠ»ΡΡ Π΄Π»Ρ Mikrotika Π² ΡΠΎΡΠΌΠ°Ρ PEM Ρ Π΅Π΅ ΠΏΠΎΠΌΠΎΡΡΡ Π½Π΅ ΠΏΠΎΠ»ΡΡΠΈΡΡΡ β ΠΎΠ½Π° ΠΊΠΎΠ½Π²Π΅ΡΡΠΈΡΡΠ΅Ρ ΡΠΎΠ»ΡΠΊΠΎ Π² ΠΎΠ΄Π½Ρ ΡΡΠΎΡΠΎΠ½Ρ: PEM Π² RSA. Π‘Π³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ plainrsa-gen ΠΊΠ»ΡΡ Π½Π΅ ΡΠΌΠΎΠ³Π»ΠΈ ΠΏΡΠΎΡΠΈΡΠ°ΡΡ Π½ΠΈ openssl, Π½ΠΈ ssh-keygen, ΠΏΠΎΡΡΠΎΠΌΡ Ρ ΠΈΡ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠ°ΠΊΠΆΠ΅ Π½Π΅ ΠΏΠΎΠ»ΡΡΠΈΡΡΡ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΊΠΎΠ½Π²Π΅ΡΡΠ°ΡΠΈΡ.
ΠΡ ΡΠ³Π΅Π½Π΅ΡΠΈΡΡΠ΅ΠΌ PEM ΠΊΠ»ΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ openssl, Π° Π·Π°ΡΠ΅ΠΌ ΠΊΠΎΠ½Π²Π΅ΡΡΠΈΡΡΠ΅ΠΌ Π΅Π³ΠΎ Π΄Π»Ρ racoon Ρ ΠΏΠΎΠΌΠΎΡΡΡ plainrsa-gen:
# ΠΠ΅Π½Π΅ΡΠΈΡΡΠ΅ΠΌ ΠΊΠ»ΡΡ
openssl genrsa -out server-name.pem 1024
# ΠΠ·Π²Π»Π΅ΠΊΠ°Π΅ΠΌ ΠΏΡΠ±Π»ΠΈΡΠ½ΡΠΉ ΠΊΠ»ΡΡ
openssl rsa -in server-name.pem -pubout > server-name.pub.pem
# ΠΠΎΠ½Π²Π΅ΡΡΠΈΡΡΠ΅ΠΌ
plainrsa-gen -i server-name.pem -f server-name.privet.key
plainrsa-gen -i server-name.pub.pem -f server-name.pub.key
ΠΠΎΠ»ΡΡΠ΅Π½Π½ΡΠ΅ ΠΊΠ»ΡΡΠΈ ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ Π² ΠΏΠ°ΠΏΠΊΡ: /etc/racoon/certs/server. ΠΠ΅ Π·Π°Π±ΡΠ²Π°Π΅ΠΌ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π²Π»Π°Π΄Π΅Π»ΡΡΠ΅ΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, ΠΎΡ ΡΡΠ΅Π³ΠΎ ΠΈΠΌΠ΅Π½ΠΈ Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΡΡ Π΄Π΅ΠΌΠΎΠ½ racoon (ΠΎΠ±ΡΡΠ½ΠΎ root), ΠΏΡΠ°Π²Π° 600.
ΠΠ°ΡΡΡΠΎΠΉΠΊΡ mikrotik ΠΎΠΏΠΈΡΡ ΠΏΡΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠΈ ΡΠ΅ΡΠ΅Π· WinBox.
ΠΠ»ΡΡ server-name.pub.pem Π·Π°Π³ΡΡΠ·ΠΈΠΌ Π² mikrotik: ΠΠ΅Π½Ρ Β«FilesΒ» β Β«UploadΒ».
ΠΡΠΊΡΡΠ²Π°Π΅ΠΌ ΡΠ°Π·Π΄Π΅Π» Β«IPΒ» β Β«IP secΒ» β Π²ΠΊΠ»Π°Π΄ΠΊΠ° Β«KeysΒ». Π’Π΅ΠΏΠ΅ΡΡ Π³Π΅Π½Π΅ΡΠΈΡΡΠ΅ΠΌ ΠΊΠ»ΡΡΠΈ β ΠΊΠ½ΠΎΠΏΠΊΠ° Β«Generate KeyΒ», Π·Π°ΡΠ΅ΠΌ ΡΠΊΡΠΏΠΎΡΡΠΈΡΡΠ΅ΠΌ ΠΏΡΠ±Π»ΠΈΡΠ½ΡΠΉ ΠΊΠ»ΡΡ mikrotika Β«Expor Pub. KeyΒ», ΡΠΊΠ°ΡΠ°ΡΡ Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ· ΡΠ°Π·Π΄Π΅Π»Π° Β«FilesΒ», ΠΏΡΠ°Π²ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ ΠΏΠΎ ΡΠ°ΠΉΠ»Ρ β Β«DownloadΒ».
ΠΠΌΠΏΠΎΡΡΠΈΡΡΠ΅ΠΌ ΠΏΡΠ±Π»ΠΈΡΠ½ΡΠΉ ΠΊΠ»ΡΡ racoon, Β«ImportΒ», Π² Π²ΡΠΏΠ°Π΄Π°ΡΡΠ΅ΠΌ ΡΠΏΠΈΡΠΊΠ΅ ΠΏΠΎΠ»Ρ Β«File nameΒ» ΠΈΡΠ΅ΠΌ Π·Π°Π³ΡΡΠΆΠ΅Π½Π½ΡΠΉ ΡΠ°Π½Π΅Π΅ Π½Π°ΠΌΠΈ server-name.pub.pem.
ΠΡΠ±Π»ΠΈΡΠ½ΡΠΉ ΠΊΠ»ΡΡ mikrotik Π½ΡΠΆΠ½ΠΎ ΡΠΊΠΎΠ½Π²Π΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ
plainrsa-gen -i mikrotik.pub.pem -f mikrotik.pub.key
ΠΈ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΡ Π² ΠΏΠ°ΠΏΠΊΡ /etc/racoon/certs Π½Π΅ Π·Π°Π±ΡΠ² ΠΏΡΠΎ Π²Π»Π°Π΄Π΅Π»ΡΡΠ° ΠΈ ΠΏΡΠ°Π²Π°.
ΠΠΎΠ½ΡΠΈΠ³ racoon Ρ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠΌΠΈ: /etc/racoon/racoon.conf
log info; # Π£ΡΠΎΠ²Π΅Π½Ρ Π»ΠΎΠ³ΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΠΏΡΠΈ ΠΎΡΠ»Π°Π΄ΠΊΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ Debug ΠΈΠ»ΠΈ Debug2.
listen {
isakmp 1.1.1.1 [500]; # ΠΠ΄ΡΠ΅Ρ ΠΈ ΠΏΠΎΡΡ, Π½Π° ΠΊΠΎΡΠΎΡΠΎΠΌ Π±ΡΠ΄Π΅Ρ ΡΠ»ΡΡΠ°ΡΡ Π΄Π΅ΠΌΠΎΠ½.
isakmp_natt 1.1.1.1 [4500]; # ΠΠ΄ΡΠ΅Ρ ΠΈ ΠΏΠΎΡΡ, Π½Π° ΠΊΠΎΡΠΎΡΠΎΠΌ Π±ΡΠ΄Π΅Ρ ΡΠ»ΡΡΠ°ΡΡ Π΄Π΅ΠΌΠΎΠ½ Π΄Π»Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ² Π·Π° NAT.
strict_address; # ΠΡΠΏΠΎΠ»Π½ΡΡΡ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΡΡ ΠΏΡΠΎΠ²Π΅ΡΠΊΡ ΠΏΡΠΈΠ²ΡΠ·ΠΊΠΈ ΠΊ ΡΠΊΠ°Π·Π°Π½Π½ΡΠΌ Π²ΡΡΠ΅ IP.
}
path certificate "/etc/racoon/certs"; # ΠΡΡΡ Π΄ΠΎ ΠΏΠ°ΠΏΠΊΠΈ Ρ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠ°ΠΌΠΈ.
remote anonymous { # Π‘Π΅ΠΊΡΠΈΡ, Π·Π°Π΄Π°ΡΡΠ°Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Π΄Π΅ΠΌΠΎΠ½Π° Ρ ISAKMP ΠΈ ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ΅ΠΆΠΈΠΌΠΎΠ² Ρ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°ΡΡΠΈΠΌΠΈΡΡ Ρ
ΠΎΡΡΠ°ΠΌΠΈ. Π’Π°ΠΊ ΠΊΠ°ΠΊ IP, Ρ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Mikrotik, Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠΉ, ΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ anonymous, ΡΡΠΎ ΡΠ°Π·ΡΠ΅ΡΠ°Π΅Ρ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ Ρ Π»ΡΠ±ΠΎΠ³ΠΎ Π°Π΄ΡΠ΅ΡΠ°. ΠΡΠ»ΠΈ IP Ρ Ρ
ΠΎΡΡΠΎΠ² ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ, ΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠΉ Π°Π΄ΡΠ΅Ρ ΠΈ ΠΏΠΎΡΡ.
passive on; # ΠΠ°Π΄Π°Π΅Ρ "ΡΠ΅ΡΠ²Π΅ΡΠ½ΡΠΉ" ΡΠ΅ΠΆΠΈΠΌ ΡΠ°Π±ΠΎΡΡ Π΄Π΅ΠΌΠΎΠ½Π°, ΠΎΠ½ Π½Π΅ Π±ΡΠ΄Π΅Ρ ΠΏΡΡΠ°ΡΡΡΡ ΠΈΠ½ΠΈΡΠΈΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ.
nat_traversal on; # ΠΠΊΠ»ΡΡΠ°Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ΅ΠΆΠΈΠΌΠ° NAT-T Π΄Π»Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ², Π΅ΡΠ»ΠΈ ΠΎΠ½ΠΈ Π·Π° NAT.
exchange_mode main; # Π Π΅ΠΆΠΈΠΌ ΠΎΠ±ΠΌΠ΅Π½Π° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°ΠΌΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ, Π² Π΄Π°Π½Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ---ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½ΠΈΠ΅.
my_identifier address 1.1.1.1; # ΠΠ΄Π΅Π½ΡΠΈΡΠΈΡΠΈΡΡΠ΅ΠΌ Π½Π°Ρ linux Ρ
ΠΎΡΡ ΠΏΠΎ Π΅Π³ΠΎ ip Π°Π΄ΡΠ΅ΡΡ.
certificate_type plain_rsa "server/server-name.priv.key"; # ΠΡΠΈΠ²Π°ΡΠ½ΡΠΉ ΠΊΠ»ΡΡ ΡΠ΅ΡΠ²Π΅ΡΠ°.
peers_certfile plain_rsa "mikrotik.pub.key"; # ΠΡΠ±Π»ΠΈΡΠ½ΡΠΉ ΠΊΠ»ΡΡ Mikrotik.
proposal_check claim; # Π Π΅ΠΆΠΈΠΌ ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½ΠΈΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² ISAKMP ΡΡΠ½Π½Π΅Π»Ρ. Racoon Π±ΡΠ΄Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°ΡΡΠ΅Π³ΠΎΡΡ Ρ
ΠΎΡΡΠ° (ΠΈΠ½ΠΈΡΠΈΠ°ΡΠΎΡΠ°) Π΄Π»Ρ ΡΡΠΎΠΊΠ° Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΡΠ΅ΡΡΠΈΠΈ ΠΈ Π΄Π»ΠΈΠ½Ρ ΠΊΠ»ΡΡΠ°, Π΅ΡΠ»ΠΈ Π΅Π³ΠΎ ΡΡΠΎΠΊ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΡΠ΅ΡΡΠΈΠΈ Π±ΠΎΠ»ΡΡΠ΅, ΠΈΠ»ΠΈ Π΄Π»ΠΈΠ½Π° Π΅Π³ΠΎ ΠΊΠ»ΡΡΠ° ΠΊΠΎΡΠΎΡΠ΅, ΡΠ΅ΠΌ Ρ ΠΈΠ½ΠΈΡΠΈΠ°ΡΠΎΡΠ°. ΠΡΠ»ΠΈ ΡΡΠΎΠΊ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΡΠ΅ΡΡΠΈΠΈ ΠΊΠΎΡΠΎΡΠ΅, ΡΠ΅ΠΌ Ρ ΠΈΠ½ΠΈΡΠΈΠ°ΡΠΎΡΠ°, racoon ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΡΠΎΠΊΠ° Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΡΠ΅ΡΡΠΈΠΈ ΠΈ Π±ΡΠ΄Π΅Ρ ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ RESPONDER-LIFETIME.
proposal { # ΠΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ISAKMP ΡΡΠ½Π½Π΅Π»Ρ.
encryption_algorithm aes; # ΠΠ΅ΡΠΎΠ΄ ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΡ ISAKMP ΡΡΠ½Π½Π΅Π»Ρ.
hash_algorithm sha512; # ΠΠ»Π³ΠΎΡΠΈΡΠΌ Ρ
Π΅ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠΉ Π΄Π»Ρ ISAKMP ΡΡΠ½Π½Π΅Π»Ρ.
authentication_method rsasig; # Π Π΅ΠΆΠΈΠΌ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ Π΄Π»Ρ ISAKMP ΡΡΠ½Π½Π΅Π»Ρ - ΠΏΠΎ RSA ΠΊΠ»ΡΡΠ°ΠΌ.
dh_group modp2048; # ΠΠ»ΠΈΠ½Π° ΠΊΠ»ΡΡΠ° Π΄Π»Ρ Π°Π»Π³ΠΎΡΠΈΡΠΌΠ° ΠΠΈΡΡΠΈ-Π₯Π΅Π»Π»ΠΌΠ°Π½Π° ΠΏΡΠΈ ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½ΠΈΠΈ ISAKMP ΡΡΠ½Π½Π΅Π»Ρ.
lifetime time 86400 sec; ΠΡΠ΅ΠΌΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΡΠ΅ΡΡΠΈΠΈ.
}
generate_policy on; # ΠΠ²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ESP ΡΡΠ½Π½Π΅Π»Π΅ΠΉ ΠΈΠ· Π·Π°ΠΏΡΠΎΡΠ°, ΠΏΡΠΈΡΠ΅Π΄ΡΠ΅Π³ΠΎ ΠΎΡ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°ΡΡΠ΅Π³ΠΎΡΡ Ρ
ΠΎΡΡΠ°.
}
sainfo anonymous { # ΠΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ESP ΡΡΠ½Π½Π΅Π»Π΅ΠΉ, anonymous - ΡΠΊΠ°Π·Π°Π½Π½ΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ Π±ΡΠ΄ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½Ρ ΠΊΠ°ΠΊ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ. ΠΠ»Ρ ΡΠ°Π·Π½ΡΡ
ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ², ΠΏΠΎΡΡΠΎΠ², ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΎΠ² ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π΄Π°Π²Π°ΡΡ ΡΠ°Π·Π½ΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ, ΡΠΎΠΏΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΡΠΎΠΈΡΡ
ΠΎΠ΄ΠΈΡ ΠΏΠΎ ip Π°Π΄ΡΠ΅ΡΠ°ΠΌ, ΠΏΠΎΡΡΠ°ΠΌ, ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π°ΠΌ.
pfs_group modp2048; # ΠΠ»ΠΈΠ½Π° ΠΊΠ»ΡΡΠ° Π΄Π»Ρ Π°Π»Π³ΠΎΡΠΈΡΠΌΠ° ΠΠΈΡΡΠΈ-Π₯Π΅Π»Π»ΠΌΠ°Π½Π° Π΄Π»Ρ ESP ΡΡΠ½Π½Π΅Π»Π΅ΠΉ.
lifetime time 28800 sec; # Π‘ΡΠΎΠΊ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ESP ΡΡΠ½Π½Π΅Π»Π΅ΠΉ.
encryption_algorithm aes; # ΠΠ΅ΡΠΎΠ΄ ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΡ ESP ΡΡΠ½Π½Π΅Π»Π΅ΠΉ.
authentication_algorithm hmac_sha512; # ΠΠ»Π³ΠΎΡΠΈΡΠΌ Ρ
Π΅ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠΉ Π΄Π»Ρ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ESP ΡΡΠ½Π½Π΅Π»Π΅ΠΉ.
compression_algorithm deflate; # Π‘ΠΆΠΈΠΌΠ°ΡΡ ΠΏΠ΅ΡΠ΅Π΄Π°Π²Π°Π΅ΠΌΡΠ΅ Π΄Π°Π½Π½ΡΠ΅, Π°Π»Π³ΠΎΡΠΈΡΠΌ ΡΠΆΠ°ΡΠΈΡ ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄ΠΈΠ½.
}
ΠΠΎΠ½ΡΠΈΠ³ mikrotik
ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΠΌΡΡ Π² ΡΠ°Π·Π΄Π΅Π» "IP" β "IPsec"
ΠΠΊΠ»Π°Π΄ΠΊΠ° "Profiles"
ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ
ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅
Name
ΠΠ° Π²Π°ΡΠ΅ ΡΡΠΌΠΎΡΡΠ΅Π½ΠΈΠ΅ (ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ default)
Hash Algorithm
sha512
Encryption Algorithm
aes-128
DH-Group
modp2048
Proposhal_check
claim
Lifetime
1d 00:00:00
NAT Traversal
true (ΡΡΠ°Π²ΠΈΠΌ Π³Π°Π»ΠΎΡΠΊΡ)
DPD
120
DPD Maximum failure
5
ΠΠΊΠ»Π°Π΄ΠΊΠ° "Peers"
ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ
ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅
Name
ΠΠ° Π²Π°ΡΠ΅ ΡΡΠΌΠΎΡΡΠ΅Π½ΠΈΠ΅ (Π΄Π°Π»Π΅Π΅ MyPeer)
Address
1.1.1.1 (IP linux ΠΌΠ°ΡΠΈΠ½Ρ)
Local Address
10.0.0.2 (IP WAN ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° mikrotik)
Profile
default
Exchange Mode
main
Passive
false
Send INITIAL_CONTACT
true
ΠΠΊΠ»Π°Π΄ΠΊΠ° "Proposal"
ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ
ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅
Name
ΠΠ° Π²Π°ΡΠ΅ ΡΡΠΌΠΎΡΡΠ΅Π½ΠΈΠ΅ (Π΄Π°Π»Π΅Π΅ MyPeerProposal)
Auth. Algorithms
sha512
Encr. Algorithms
aes-128-cbc
Lifetime
08:00:00
PFS Group
modp2048
ΠΠΊΠ»Π°Π΄ΠΊΠ° "Identities"
ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ
ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅
Peer
MyPeer
Atuh. Method
rsa key
Key
mikrotik.privet.key
Remote Key
server-name.pub.pem
Policy Tamplate Group
default
Notrack Chain
ΠΏΡΡΡΠΎ
My ID Type
auto
Remote ID Type
auto
Match By
remote id
Mode Configuration
ΠΏΡΡΡΠΎ
Generate Policy
no
ΠΠΊΠ»Π°Π΄ΠΊΠ° "Policies β General"
ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ
ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅
Peer
MyPeer
Tunnel
true
Src. Address
192.168.0.0/30
Dest. Address
192.168.0.0/30
Protocol
255 (all)
Template
false
ΠΠΊΠ»Π°Π΄ΠΊΠ° "Policies β Action"
ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ
ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅
Action
encrypt
Level
requier
IPsec Protocols
esp
Proposal
MyPeerProposal
Π‘ΠΊΠΎΡΠ΅Π΅ Π²ΡΠ΅Π³ΠΎ Ρ Π²Π°Ρ, ΠΊΠ°ΠΊ ΠΈ Ρ ΠΌΠ΅Π½Ρ, Π½Π° WAN ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ΅ Π½Π°ΡΡΡΠΎΠ΅Π½ snat/masquerade, ΡΡΠΎ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ Π½Π°Π΄ΠΎ ΡΠΊΠΎΡΡΠ΅ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ, ΡΡΠΎΠ±Ρ ΠΈΡΡ
ΠΎΠ΄ΡΡΠΈΠ΅ ΠΏΠ°ΠΊΠ΅ΡΡ ipsec ΡΡ
ΠΎΠ΄ΠΈΠ»ΠΈ Π² Π½Π°Ρ ΡΡΠ½Π½Π΅Π»Ρ:
ΠΠ΅ΡΠ΅Ρ
ΠΎΠ΄ΠΈΠΌ Π² ΡΠ°Π·Π΄Π΅Π» "IP" β "Firewall".
ΠΠΊΠ»Π°Π΄ΠΊΠ° "NAT", ΠΎΡΠΊΡΡΠ²Π°Π΅ΠΌ Π½Π°ΡΠ΅ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ snat/masquerade.
ΠΠΊΠ»Π°Π΄ΠΊΠ° "Advanced"
ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ
ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅
IPsec Policy
out: none
Π Π΅ΡΡΠ°ΡΡΡΠ΅ΠΌ Π΄Π΅ΠΌΠΎΠ½Π° racoon
sudo systemctl restart racoon
ΠΡΠ»ΠΈ ΠΏΡΠΈ ΡΠ΅ΡΡΠ°ΡΡΠ΅ racoon Π½Π΅ Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΡΡ, Π·Π½Π°ΡΠΈΡ Π² ΠΊΠΎΠ½ΡΠΈΠ³Π΅ ΠΈΠΌΠ΅Π΅ΡΡΡ ΠΎΡΠΈΠ±ΠΊΠ°, Π² syslog racoon Π²ΡΠ²ΠΎΠ΄ΠΈΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ Π½ΠΎΠΌΠ΅ΡΠ΅ ΡΡΡΠΎΠΊΠΈ, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½Π° ΠΎΡΠΈΠ±ΠΊΠ°.
ΠΠ΅ΠΌΠΎΠ½ racoon ΠΏΡΠΈ Π·Π°Π³ΡΡΠ·ΠΊΠ΅ ΠΠ‘ ΡΡΠ°ΡΡΡΠ΅Ρ ΡΠ°Π½ΡΡΠ΅ ΠΏΠΎΠ΄Π½ΡΡΠΈΡ ΡΠ΅ΡΠ΅Π²ΡΡ
ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ², Π° ΠΌΡ ΡΠΊΠ°Π·Π°Π»ΠΈ Π² ΡΠ΅ΠΊΡΠΈΠΈ listen ΠΎΠΏΡΠΈΡ strict_address, Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π² ΡΠ°ΠΉΠ» systemd ΡΠ½ΠΈΡΠ° racoon
/lib/systemd/system/racoon.service, Π² ΡΠ΅ΠΊΡΠΈΡ [Unit], ΡΡΡΠΎΠΊΡ After=network.target.
Π‘Π΅ΠΉΡΠ°Ρ Π½Π°ΡΠΈ ipsec ΡΡΠ½Π½Π΅Π»ΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΠΎΠ΄Π½ΡΡΡΡΡ, ΡΠΌΠΎΡΡΠΈΠΌ Π²ΡΠ²ΠΎΠ΄:
sudo ip xfrm policy
src 192.168.255.0/30 dst 192.168.255.0/30
dir out priority 2147483648
tmpl src 1.1.1.1 dst "IP NAT ΡΠ΅ΡΠ΅Π· ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ mikrotik"
proto esp reqid 0 mode tunnel
src 192.168.255.0/30 dst 192.168.255.0/30
dir fwd priority 2147483648
tmpl src "IP NAT ΡΠ΅ΡΠ΅Π· ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ mikrotik" dst 1.1.1.1
proto esp reqid 0 mode tunnel
src 192.168.255.0/30 dst 192.168.255.0/30
dir in priority 2147483648
tmpl src "IP NAT ΡΠ΅ΡΠ΅Π· ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ mikrotik" dst 1.1.1.1
proto esp reqid 0 mode tunnel
ΠΡΠ»ΠΈ ΡΡΠ½Π½Π΅Π»ΠΈ Π½Π΅ ΠΏΠΎΠ΄Π½ΡΠ»ΠΈΡΡ, ΡΠΌΠΎΡΡΠΈΡΠ΅ syslog, Π»ΠΈΠ±ΠΎ journalctl -u racoon.
Π’Π΅ΠΏΠ΅ΡΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π½Π°ΡΡΡΠΎΠΈΡΡ L3 ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΡ, ΡΡΠΎΠ±Ρ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ ΠΌΠ°ΡΡΡΡΡΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΡΡΠ°ΡΠΈΠΊ. ΠΡΡΡ ΡΠ°Π·Π½ΡΠ΅ Π²Π°ΡΠΈΠ°Π½ΡΡ, ΠΌΡ Π±ΡΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ IPIP, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π΅Π³ΠΎ mikrotik ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ, Ρ Π±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π» vti, Π½ΠΎ, ΠΊ ΡΠΎΠΆΠ°Π»Π΅Π½ΠΈΡ, Π² mikrotik Π΅Π³ΠΎ Π΄ΠΎ ΡΠΈΡ ΠΏΠΎΡ Π½Π΅ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π»ΠΈ. ΠΡ IPIP ΠΎΠ½ ΠΎΡΠ»ΠΈΡΠ°Π΅ΡΡΡ ΡΠ΅ΠΌ, ΡΡΠΎ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΈΠ½ΠΊΠ°ΠΏΡΡΠ»ΠΈΡΠΎΠ²Π°ΡΡ multicast ΠΈ ΡΡΠ°Π²ΠΈΡΡ ΠΌΠ΅ΡΠΊΠΈ (fwmark) Π½Π° ΠΏΠ°ΠΊΠ΅ΡΡ, ΠΏΠΎ ΠΊΠΎΡΠΎΡΡΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡ ΡΠΈΠ»ΡΡΡΠΎΠ²Π°ΡΡ Π² iptables ΠΈ iproute2 (policy-based routing). ΠΡΠ»ΠΈ Π½ΡΠΆΠ½Π° ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½Π°Ρ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΡ β ΡΠΎΠ³Π΄Π°, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, GRE. ΠΠΎ Π½Π΅ ΡΡΠΎΠΈΡ Π·Π°Π±ΡΠ²Π°ΡΡ, ΡΡΠΎ Π·Π° Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΡ ΠΏΠ»Π°ΡΠΈΠΌ Π±ΠΎΠ»ΡΡΠΈΠΌ ΠΎΠ²Π΅ΡΡ Π΅Π΄ΠΎΠΌ.
ΠΠ΅ΡΠ΅Π²ΠΎΠ΄ Π½Π΅ΠΏΠ»ΠΎΡ
ΠΎΠ³ΠΎ ΠΎΠ±Π·ΠΎΡΠ° ΡΡΠ½Π½Π΅Π»ΡΠ½ΡΡ
ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ² ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ
ΠΠ° Linux:
# Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ
sudo ip tunnel add ipip-ipsec0 local 192.168.255.1 remote 192.168.255.2 mode ipip
# ΠΠΊΡΠΈΠ²ΠΈΡΡΠ΅ΠΌ
sudo ip link set ipip-ipsec0 up
# ΠΠ°Π·Π½Π°ΡΠ°Π΅ΠΌ Π°Π΄ΡΠ΅Ρ
sudo ip addr add 192.168.255.1/30 dev ipip-ipsec0
Π’Π΅ΠΏΠ΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΌΠ°ΡΡΡΡΡΡ Π΄Π»Ρ ΡΠ΅ΡΠ΅ΠΉ Π·Π° mikrotik
sudo ip route add A.B.C.D/Prefix via 192.168.255.2
Π§ΡΠΎΠ±Ρ Π½Π°Ρ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ ΠΈ ΠΌΠ°ΡΡΡΡΡΡ ΠΏΠΎΠ΄Π½ΠΈΠΌΠ°Π»ΠΈΡΡ ΠΏΠΎΡΠ»Π΅ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΊΠΈ, Π½ΡΠΆΠ½ΠΎ ΠΎΠΏΠΈΡΠ°ΡΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Π² /etc/network/interfaces ΠΈ ΡΠ°ΠΌ ΠΆΠ΅ Π² post-up Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ ΠΌΠ°ΡΡΡΡΡΡ, Π»ΠΈΠ±ΠΎ ΠΏΡΠΎΠΏΠΈΡΠ°ΡΡ Π²ΡΠ΅ Π² ΠΎΠ΄Π½ΠΎΠΌ ΡΠ°ΠΉΠ»Π΅, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, /etc/ipip-ipsec0.conf ΠΈ Π΄Π΅ΡΠ³Π°ΡΡ Π΅Π³ΠΎ ΡΠ΅ΡΠ΅Π· post-up, Π½Π΅ Π·Π°Π±ΡΠ΄ΡΡΠ΅ ΠΏΡΠΎ Π²Π»Π°Π΄Π΅Π»ΡΡΠ° ΡΠ°ΠΉΠ»Π°, ΠΏΡΠ°Π²Π° ΠΈ ΡΠ΄Π΅Π»Π°ΡΡ Π΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΠΌ.
ΠΠΎΠ΄ ΠΊΠ°ΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅Ρ ΡΠ°ΠΉΠ»Π°
#!/bin/bash
ip tunnel add ipip-ipsec0 local 192.168.255.1 remote 192.168.255.2 mode ipip
ip link set ipip-ipsec0 up
ip addr add 192.168.255.1/30 dev ipip-ipsec0
ip route add A.B.C.D/Prefix via 192.168.255.2
ΠΠ° Mikrotik:
Π Π°Π·Π΄Π΅Π» Β«InterfacesΒ», Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΠΌ Π½ΠΎΠ²ΡΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Β«IP tunnelΒ»:
ΠΠΊΠ°Π»Π°Π΄ΠΊΠ° Β«IP tunnelΒ» β Β«GeneralΒ»
ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ
ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅
Name
ΠΠ° Π²Π°ΡΠ΅ ΡΡΠΌΠΎΡΡΠ΅Π½ΠΈΠ΅ (Π΄Π°Π»Π΅Π΅ IPIP-IPsec0)
MTU
1480 (Π΅ΡΠ»ΠΈ Π½Π΅ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ, ΡΠΎ mikrotik Π½Π°ΡΠΈΠ½Π°Π΅Ρ ΡΠ΅Π·Π°ΡΡ mtu Π΄ΠΎ 68)
Local Address
192.168.0.2
Remote Address
192.168.0.1
Ipsec Secret
ΠΠ΅Π°ΠΊΡΠΈΠ²ΠΈΡΡΠ΅ΠΌ ΠΏΠΎΠ»Π΅ (ΠΈΠ½Π°ΡΠ΅ Π±ΡΠ΄Π΅Ρ ΡΠΎΠ·Π΄Π°Π½ Π½ΠΎΠ²ΡΠΉ Peer)
Keepalive
ΠΠ΅Π°ΠΊΡΠΈΠ²ΠΈΡΡΠ΅ΠΌ ΠΏΠΎΠ»Π΅ (ΠΈΠ½Π°ΡΠ΅ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎ Π²ΡΠΊΠ»ΡΡΠ°ΡΡΡΡ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Ρ mikrotika ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ ΡΠ²ΠΎΠΉ ΡΠΎΡΠΌΠ°Ρ ΡΡΠΈΡ
ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² ΠΈ Ρ linux Π½Π΅ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ)
DSCP
inherit
Dont Fragment
no
Clamp TCP MSS
true
Allow Fast Path
true
Π Π°Π·Π΄Π΅Π» Β«IPΒ» β Β«AddressesΒ», Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΠΌ Π°Π΄ΡΠ΅Ρ:
ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ
ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅
Address
192.168.0.2/30
Interface
IPIP-IPsec0
Π’Π΅ΠΏΠ΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ ΠΌΠ°ΡΡΡΡΡΡ Π² ΡΠ΅ΡΠΈ Π·Π° linux ΠΌΠ°ΡΠΈΠ½ΠΎΠΉ, ΠΏΡΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ ΠΌΠ°ΡΡΡΡΡΠ°, gateway Π±ΡΠ΄Π΅Ρ Π½Π°Ρ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ IPIP-IPsec0.
PS
Π’Π°ΠΊ ΠΊΠ°ΠΊ Π½Π°Ρ ΡΠ΅ΡΠ²Π΅Ρ linux ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΡΠ°Π½Π·ΠΈΡΠ½ΡΠΌ, ΡΠΎ Π½Π° Π½Π΅ΠΌ ΠΈΠΌΠ΅Π΅Ρ ΡΠΌΡΡΠ» Π·Π°Π΄Π°ΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ Clamp TCP MSS Π΄Π»Ρ ipip ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ²:
ΡΠΎΠ·Π΄Π°Π΅ΠΌ ΡΠ°ΠΉΠ» /etc/iptables.conf ΡΠΎ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΡΠΌ:
*mangle
-A POSTROUTING -o ipip+ -p tcp -m tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu
COMMIT
ΠΈ Π² /etc/network/interfaces
post-up iptables-restore < /etc/iptables.conf
Π ΡΠ΅ΡΠΈ Π·Π° mikrotik Ρ ΠΌΠ΅Π½Ρ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ nginx (ip 10.10.10.1), Π΄Π΅Π»Π°Π΅ΠΌ Π΄ΠΎΡΡΡΠΏΠ½ΡΠΌ Π΅Π³ΠΎ ΠΈΠ· ΠΈΠ½ΡΠ΅ΡΠ½Π΅ΡΠ°, Π΄ΠΎΠ±Π°Π²ΠΈΠΌ Π² /etc/iptables.conf:
*nat
-A PREROUTING -d 1.1.1.1/32 -p tcp -m multiport --dports 80,443 -j DNAT --to-destination 10.10.10.1
#ΠΠ° mikrotik, Π² ΡΠ°Π±Π»ΠΈΡΠ΅ mangle, Π½Π°Π΄ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ route Ρ Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ΠΌ 192.168.0.1 Π΄Π»Ρ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² Ρ Π°Π΄ΡΠ΅ΡΠΎΠΌ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠ° 10.10.10.1 ΠΈ ΠΏΠΎΡΡΠΎΠ² 80, 443.
# Π’Π°ΠΊ ΠΆΠ΅ Π½Π° linux ΡΠ°Π±ΠΎΡΠ°Π΅Ρ OpenVPN ΡΠ΅ΡΠ²Π΅Ρ 172.16.0.1/24, Π΄Π»Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ² ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΊ Π½Π΅ΠΌΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΠ»ΡΠ·Π° Π΄Π°Π΅ΠΌ Π΄ΠΎΡΡΡΠΏ Π² ΠΈΠ½ΡΠ΅ΡΠ½Π΅Ρ
-A POSTROUTING -s 172.16.0.0/24 -o eth0 -j SNAT --to-source 1.1.1.1
COMMIT
ΠΠ΅ Π·Π°Π±ΡΠ²Π°ΠΉΡΠ΅ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠ΅ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡ Π² iptables, Π΅ΡΠ»ΠΈ Ρ Π²Π°Ρ Π²ΠΊΠ»ΡΡΠ΅Π½Ρ ΡΠΈΠ»ΡΡΡΡ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ².
ΠΡΠ΄ΡΡΠ΅ Π·Π΄ΠΎΡΠΎΠ²Ρ!
ΠΡΡΠΎΡΠ½ΠΈΠΊ: habr.com