19 окт. 2012 г.

IPsec Centos 6. IPsec-tools.



На днях понадобилось настроить туннель ipsec к cisco. Решил использовать Centos.

[root@test-psec]# cat /etc/centos-release
CentOS release 6.2 (Final)


Но оказалось теперь все не так просто как было раньше, нашлись грабли...

На системе обязательно должно быть настроено время и сеть.

Установка пакета ipsec-tools. Раньше было просто, поставил группу, настроил и работай. Но в centos 6 убрали из реп данный пакет!!! Теперь все принято делать через OpensWan. Но я хочу по старому, через ipsec-tools.
Для начала поставим пакеты с компиляторами и библиотеками:
[root@test-psec]# yum groupinstall "Development Tools"
Также нужно скачать библиотеки selinux:
[root@test-psec]# yum install libsepol-devel libselinux-devel
Для работы ipsec нужен пакет openssl версии 0.9.6 или выше, качаем:
[root@test-psec]# wget http://www.openssl.org/source/openssl-1.0.0g.tar.gz
распакуем
[root@test-psec]# tar xvf openssl-1.0.0g.tar.gz
заходим в каталог
[root@test-psec]# cd /usr/src/openssl-1.0.0g
запускаем конфигуратор
[root@test-psec]# ./config --prefix=/usr
собираем
[root@test-psec]# make
устанавливаем
[root@test-psec]# make install

Скачаем последнюю версию пакета ipsec-tools:
[root@test-psec]# wget http://sourceforge.net/projects/ipsec
-tools/files/latest/downloadsource=files
распакуем в удобное место
[root@test-psec]# tar xvf ipsec-tools-*
заходим в каталог
[root@test-psec]# cd /usr/src/ipsec-tools-*
и теперь запускаем конфигуратор
[root@test-psec]# ./configure --prefix=/usr -with-kernel-headers=/usr/include --disable-ipv6
устанавливаем
[root@test-psec]# make install
Теперь нужно создать папку:
[root@test-psec]# mkdir /etc/racoon
Создать файлы конфигураций, всего их три - psk.txt, racoon.conf, setkey.conf, можно их найти - юзать команду locate:
[root@test-psec]# updatedb
[root@test-psec]# locate psk.txt racoon.conf

/root/ipsec-tools-0.8.0/src/racoon/samples/psk.txt
/root/ipsec-tools-0.8.0/src/racoon/samples/racoon.conf

переносим их в папку а так же создаем файл для setkey
[root@test-psec]# cp /root/ipsec-tools-0.8.0/src/racoon/samples/psk.txt /etc/racoon/
[root@test-psec]# cp /root/ipsec-tools-0.8.0/src/racoon/samples/racoon.conf /etc/racoon/
[root@test-psec]# touch /etc/racoon/setkey.conf
[root@test-psec]# chmod 600 /etc/racoon/psk.txt

Последняя команда обязательна, в этом файле будет храниться секретный ключ, и неправильные права на него повлияют на работу racoon.
Немного о файлах конфигурации:
racoon.conf - основной файл конфигурации ipsec. Racoon это IKE (Internet Key Exchange) демон, для автоматического обмена ключами ipsec.
psk.txt - файл содержащий pre shared ключ для аутентификации.
setkey.conf - файл конфигурации утилиты setkey, которая нужна для управления SPD (Security Policy Database) и SAD (Security Association Database). SPD - база политик безопасности, эти политики указывают что и как шифровать. SAD - база ассоциаций безопасности, ассоциация - связь, установленный туннель. Можно работать без файла setkey.conf, но поверьте, управлять SPD через файл очень удобно.
В следующей заметке займусь конфигурированием.

2 комментария:

  1. http://www.openssl.org/source/openssl-1.0.2d.tar.gz

    ОтветитьУдалить
  2. В этих ваших CentOsах пришлось повозиться, но поставилось так, на серии недавно установленных серверов:
    yum groupinstall "Server Platform Development"
    yum groupinstall "Development Tools"
    yum install vim screen ntpdate libpam openssl openssl-devel openldap-devel kernel-devel flex-devel quagga
    wget http://netix.dl.sourceforge.net/project/ipsec-tools/ipsec-tools/0.8.0/ipsec-tools-0.8.0.tar.gz
    wget http://openssl.org/source/openssl-1.0.2d.tar.gz
    wget http://portal-to-web.de/tacacs/libmd.tar.gz
    tar -xvf libmd.tar.gz
    tar -xvf openssl-1.0.2d.tar.gz
    tar -xvf ipsec-tools-0.8.0.tar.gz
    cd libmd
    mkdir -p /usr/local/man/man3
    make install
    cd ../openssl-1.0.2d
    ./config --prefix=/usr
    make
    make install
    cd ../ipsec-tools-0.8.0
    ./configure --with-kernel-headers=/usr/include CFLAGS="-fno-strict-aliasing"

    ОтветитьУдалить