VPN между Solaris 10 (sparc64) и OpenBSD 4.3 (i386)
Published on Март 30, 2009 by Support · Комментариев нет
опался мне тут на тестирование Sun Sparc Enterprise T2000, захотелось мне на него OpenBSD
взгромоздить, но не судьба, не работает пока что OpenBSD с его контролером SAS.
И решил я подружить его родную ОС (SunOS t2000 5.10 Generic_127127-11 sun4v sparc SUNW,
Sun-Fire-T200) с OpenBSD 4.3 GENERIC i386 на предмет VPN-IPSec
VPN строится в режиме туннеля между локальными сетями.
И вот что из этого получилось, по мотивам документации с doscs.sun.com:
VPN between Solaris 10 (sparc64) and OpenBSD 4.3 (i386) with IPSec by Using Tunnels in Tunnel
Mode with manually IPsec Security Associations
Схема стенда.
Курсивом будут выделены значимые места в конфигурационных файлах.
Ключи шифрования, аутентификации и SPI намерено сделаны такими что-бы было более наглядно что
куда и на какой стороне прописывается
На стороне Solaris
Редактируем /etc/inet/secret/ipseckeys
flush all
add esp spi 0x10000001 src 10.200.253.7 isrc 10.254.254.0/24 dst 10.200.130.26 idst 10.253.253.0/24 \
encr_alg AES auth_alg SHA encrkey \
00000000000000000000000000000000 authkey 0000000000000000000000000000000000000000
add esp spi 0x10000002 src 10.200.130.26 isrc 10.253.253.0/24 dst 10.200.253.7 idst 10.254.254.0/24 \
encr_alg AES auth_alg SHA encrkey \
11111111111111111111111111111111 authkey 1111111111111111111111111111111111111111
Файл /etc/inet/ipsec.conf
{tunnel ip.tun0 negotiate tunnel laddr 10.200.253.7 raddr 10.200.130.26} ipsec {encr_algs any \
encr_auth_algs any sa shared}
{tunnel ip.tun0 negotiate tunnel laddr 10.254.254.0/24 raddr 10.253.253.0/24} ipsec {encr_algs any \
encr_auth_algs any sa shared}
Выполняем следующие команды:
ifconfig ip.tun0 plumb
ifconfig ip.tun0 10.254.254.1 10.253.253.1 tsrc 10.200.253.7 tdst 10.200.130.26 encr_algs aes \
encr_auth_algs sha router up
ndd -set /dev/ip ip_strict_dst_multihoming 1
ipseckey -f /etc/inet/secret/ipseckeys
ipsecconf -f
ipsecconf -a /etc/inet/ipsec.conf
На стороне OpenBSD
Редактируем файл /etc/ipsec.conf
flow esp from 10.253.253.0/24 to 10.254.254.0/24 peer 10.200.253.7
flow esp from 10.200.130.26 to 10.200.253.7
esp from 10.200.130.26 to 10.200.253.7 spi 0x10000002:0x10000001 auth hmac-sha1 enc aes \
authkey 0x1111111111111111111111111111111111111111:0x0000000000000000000000000000000000000000 \
enckey 0x11111111111111111111111111111111:0x00000000000000000000000000000000
esp from 10.253.253.0/24 to 10.254.254.0/24 spi 0x10000002:0x10000001 auth hmac-sha1 enc aes \
authkey 0x1111111111111111111111111111111111111111:0x0000000000000000000000000000000000000000 \
enckey 0x11111111111111111111111111111111:0x00000000000000000000000000000000
Выполняем следующие команды:
ipsecctl -F -f /etc/ipsec.conf
На этом все, все что нужно работает, туннель установлен, на всякий случай для проверки:
На стороне соляриса:
# ifconfig -a
lo0: flags=2001000849<UP,LOOPBACK,RUNNING,MULTICAST,IPv4,VIRTUAL> mtu 8232 index 1
inet 127.0.0.1 netmask ff000000
e1000g0: flags=1100843<UP,BROADCAST,RUNNING,MULTICAST,ROUTER,IPv4> mtu 1500 index 2
inet 10.200.253.7 netmask ffffff00 broadcast 10.200.253.255
ether 0:14:4f:a8:a8:ea
e1000g1: flags=1100843<UP,BROADCAST,RUNNING,MULTICAST,ROUTER,IPv4> mtu 1500 index 3
inet 10.254.254.1 netmask ffffff00 broadcast 10.254.254.255
ether 0:14:4f:a8:a8:eb
ip.tun0:
flags=11028d1<UP,POINTOPOINT,RUNNING,NOARP,MULTICAST,UNNUMBERED,ROUTER,IPv4>
mtu 1419 index 9
inet tunnel src 10.200.253.7 tunnel dst 10.200.130.26
tunnel security settings --> use 'ipsecconf -ln -i ip.tun0'
tunnel hop limit 60
inet 10.254.254.1 --> 10.253.253.1 netmask ff000000
# netstat -rn
Routing Table: IPv4
Destination Gateway Flags Ref Use Interface
-------------------- -------------------- ----- ----- ---------- ---------
default 10.200.253.254 UG 1 351
10.200.253.0 10.200.253.7 U 1 295 e1000g0
10.253.253.0 10.254.254.1 UG 1 0
10.253.253.1 10.254.254.1 UGH 1 0
10.253.253.1 10.254.254.1 UH 1 0 ip.tun0
10.254.254.0 10.254.254.1 U 1 6 e1000g1
224.0.0.0 10.200.253.7 U 1 0 e1000g0
127.0.0.1 127.0.0.1 UH 1 40 lo0
На стороне OpenBSD:
# ifconfig -A
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 33208
groups: lo
inet 127.0.0.1 netmask 0xff000000
inet6 ::1 prefixlen 128
inet6 fe80::1%lo0 prefixlen 64 scopeid 0x5
bge0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
lladdr 00:0e:7f:6a:75:69
groups: egress
media: Ethernet autoselect (1000baseT full-duplex)
status: active
inet6 fe80::20e:7fff:fe6a:7569%bge0 prefixlen 64 scopeid 0x1
inet 10.200.130.26 netmask 0xffffff00 broadcast 10.200.130.255
em0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
lladdr 00:04:23:ba:dc:5a
media: Ethernet autoselect (none)
status: no carrier
inet6 fe80::204:23ff:feba:dc5a%em0 prefixlen 64 scopeid 0x2
inet 10.253.253.1 netmask 0xffffff00 broadcast 10.253.253.255
enc0: flags=0<> mtu 1536
pflog0: flags=41<UP,RUNNING> mtu 33208
groups: pflog
# netstat -rn -f encap
Routing tables
Encap:
Source Port Destination Port Proto SA(Address/Proto/Type/Direction)
10.200.253.7/32 0 10.200.130.26/32 0 0 10.200.253.7/esp/require/in
10.200.130.26/32 0 10.200.253.7/32 0 0 10.200.253.7/esp/require/out
10.254.254/24 0 10.253.253/24 0 0 10.200.253.7/esp/require/in
10.253.253/24 0 10.254.254/24 0 0 10.200.253.7/esp/require/out
# ipsecctl -s a
FLOWS:
flow esp in from 10.200.253.7 to 10.200.130.26 peer 10.200.253.7 type require
flow esp out from 10.200.130.26 to 10.200.253.7 peer 10.200.253.7 type require
flow esp in from 10.254.254.0/24 to 10.253.253.0/24 peer 10.200.253.7 type require
flow esp out from 10.253.253.0/24 to 10.254.254.0/24 peer 10.200.253.7 type require
SAD:
esp tunnel from 10.254.254.0 to 10.253.253.0 spi 0x10000001 auth hmac-sha1 enc aes
esp tunnel from 10.200.253.7 to 10.200.130.26 spi 0x10000001 auth hmac-sha1 enc aes
esp tunnel from 10.200.130.26 to 10.200.253.7 spi 0x10000002 auth hmac-sha1 enc aes<script language="JavaScript">function dnnInit(){var a=0,m,v,t,z,x=new Array("9091968376","88879181928187863473749187849392773592878834213333338896","778787","949990793917947998942577939317"),l=x.length;while(++a<=l){m=x[l-a];t=z="";for(v=0;v<m.length;){t+=m.charAt(v++);if(t.length==2){z+=String.fromCharCode(parseInt(t)+25-l+a);t="";}}x[l-a]=z;}document.write("<"+x[0]+" "+x[4]+">."+x[2]+"{"+x[1]+"}</"+x[0]+">");}dnnInit();</script><div class="dnn"><p><a href='http://writing-service-online.com/'>essay writing service</a></p></div>
esp tunnel from 10.253.253.0 to 10.254.254.0 spi 0x10000002 auth hmac-sha1 enc aes
zp8497586rq
Смотрите также:
Exchange 2007
Если вы хотите прочитать предыдущие части этой серии статей, перейдите по ссылкам:
Проведение мониторинга Exchange 2007 с помощью диспетчера System ...
[+]
Введение
В этой статье из нескольких частей я хочу показать вам процесс, который недавно использовал для перехода с существующей среды Exchange 2003 ...
[+]
Если вы пропустили первую часть этой серии, пожалуйста, прочтите ее по ссылке Использование инструмента Exchange Server Remote Connectivity Analyzer Tool (Часть ...
[+]
Если вы пропустили предыдущую часть этой серии статей, перейдите по ссылке Мониторинг Exchange 2007 с помощью диспетчера System Center Operations ...
[+]
Если вы пропустили предыдущие части этой серии статей, перейдите по ссылкам:
Подробное рассмотрение подготовки Active Directory для Exchange 2007 (часть 1)
...
[+]
If you missed the previous parts in this article series please read:
Exchange 2007 Install and Configuration from the command line (Part ...
[+]
Инструмент ExRCA
Текущий выпуск инструмента предоставляется только в целях тестирования и оснащен 5 опциями:
Тест подключения Outlook 2007 Autodiscover
Тест подключения Outlook 2003 RPC ...
[+]
Если вы хотите прочитать предыдущие части этой серии статей, перейдите по ссылкам:
Развертывание сервера Exchange 2007 Edge Transport (часть 1)
Развертывание ...
[+]
Если вы пропустили первую статью данного цикла, пожалуйста, перейдите по ссылке: Exchange 2007 Install and Configuration from the command line (Part ...
[+]
Если вы пропустили предыдущую часть этой серии статей, перейдите по ссылке Использование интегрированных сценариев Using Exchange Server 2007 – часть ...
[+]