IPSEC
Материал из noname.com.ua
IPSEC
У меня нет полного понимания работы IPSEC потому пока просто приведу рабочие конфинги для
- setkey
- openswan
setkey
setkey это такая утилита из ipsec-tools
rpm -qf /usr/sbin/setkey ipsec-tools-0.8.0-25.3.x86_64
Насколько я понимаю все шифрование выполняется ядром а утилита (как iptables или tc) только управляет правилами.
Скорее всего все то же самое можно делать и другими средсвами
Вот пример конфигурации шифрования между 2 хостами
- infra-dal06 infra-sjc0 - это хостнеймы прописаные в /etc/hosts и вместо них можно использовать IP address
Host 1
#!/usr/sbin/setkey -f
flush;
spdflush;
add infra-dal06 infra-sjc01 ah 15800 -A hmac-md5 "1234567890123456";
add infra-sjc01 infra-dal06 ah 24600 -A hmac-md5 "1234567890123456";
add infra-dal06 infra-sjc01 esp 15801 -E 3des-cbc "1234567890123456fq2aswZE";
add infra-sjc01 infra-dal06 esp 24601 -E 3des-cbc "XmRVNN9Z1234567890123456";
spdadd infra-sjc01 infra-dal06 any -P out ipsec
esp/transport//require
ah/transport//require;
spdadd infra-dal06 infra-sjc01 any -P in ipsec
esp/transport//require
ah/transport//require;
Host2
#!/usr/sbin/setkey -f
flush;
spdflush;
### infra-sjc01
add infra-dal06 infra-sjc01 ah 15800 -A hmac-md5 "1234567890123456";
add infra-sjc01 infra-dal06 ah 24600 -A hmac-md5 "1234567890123456";
add infra-dal06 infra-sjc01 esp 15801 -E 3des-cbc "1234567890123456fq2aswZE";
add infra-sjc01 infra-dal06 esp 24601 -E 3des-cbc "XmRVNN9Z1234567890123456";
spdadd infra-dal06 infra-sjc01 any -P out ipsec
esp/transport//require
ah/transport//require;
spdadd infra-sjc01 infra-dal06 any -P in ipsec
esp/transport//require
ah/transport//require;
OpenSWAN
/etc/ipsec.conf
/etc/ipsec.secret
/etc/ipsec.d
Нода dal06
- file : conn_to_dal07.conf на ноде с именем dal06 и ip 184.XX.XX.XX, локальная сеть за нодой (в моем случае - для ВМок) 192.168.130.0.24, удаленная сеть - 192.168.131.0/24
- 184.XX.XX.XX - local ip
- 50.XX.XX.XX - remote ip
conn dal07-infra
authby=secret
auto=start
ike=3des-md5
## phase 1 ##
keyexchange=ike
## phase 2 ##
phase2=esp
phase2alg=3des-md5
compress=no
pfs=yes
type=tunnel
left=184.XX.XX.XX
leftsourceip=192.168.130.1
leftsubnets={ 192.168.130.1/255.255.255.0 }
leftnexthop=%defaultroute
right=50.XX.XX.XX
rightsubnets={ 192.168.131.1/255.255.255.0 }
file: conn_to_dal07.secrets
50.XX.XX.XX 184.XX.XX.XX : PSK "super-puper-secret"
184.XX.XX.XX 50.XX.XX.XX : PSK "super-puper-secret"
<PRE>
==== Нода dal07 ====
* file : conn_to_dal06.conf на ноде с именем dal07 и ip 50.XX.XX.XX, локальная сеть за нодой (в моем случае - для ВМок) 192.168.131.0.24, удаленная сеть - 192.168.130.0/24
* 50.XX.XX.XX - local ip
* 184.XX.XX.XX - remote ip
<PRE>
conn dal06-infra2
authby=secret
auto=start
ike=3des-md5
## phase 1 ##
keyexchange=ike
## phase 2 ##
phase2=esp
phase2alg=3des-md5
compress=no
pfs=yes
type=tunnel
left=50.XX.XX.XX
leftsourceip=192.168.131.1
leftsubnets={ 192.168.131.1/255.255.255.0 }
leftnexthop=%defaultroute
right=184.XX.XX.XX
rightsubnets={ 192.168.130.1/255.255.255.0 }
file: conn_to_dal06.secrets
50.XX.XX.XX 184.XX.XX.XX : PSK "super-puper-secret" 184.XX.XX.XX 50.XX.XX.XX : PSK "super-puper-secret"