Установка Cisco VPN Client на Linux (с ядром 2.6.31)

ciscoСобственно сама установка не представляет какой-то сложности, единственная проблема, с которой предстоит столкнуться — ошибка в компилировании модуля cisco_ipsec.ko из-за того, что в исходнике interceptor.c прописано неправильное определение структуры net_device (в ядре 2.6.31 она называется net_device_ops).

Теперь по порядку:

1. Распаковываем архив с программой

tar zxf vpnclient-linux-x86_64-4.8.02.0030-k9.tar.gz
cd vpnclient

2. Пускаем инсталляшку

sudo ./vpn_install

3. получаем гадость

/home/vortex64/Downloads/vpnclient/interceptor.c: In function ‘interceptor_init’:
/home/vortex64/Downloads/vpnclient/interceptor.c:132: error: ‘struct net_device’ has no member named ‘hard_start_xmit’
/home/vortex64/Downloads/vpnclient/interceptor.c:133: error: ‘struct net_device’ has no member named ‘get_stats’
/home/vortex64/Downloads/vpnclient/interceptor.c:134: error: ‘struct net_device’ has no member named ‘do_ioctl’
/home/vortex64/Downloads/vpnclient/interceptor.c: In function ‘add_netdev’:
/home/vortex64/Downloads/vpnclient/interceptor.c:271: error: ‘struct net_device’ has no member named ‘hard_start_xmit’
/home/vortex64/Downloads/vpnclient/interceptor.c:272: error: ‘struct net_device’ has no member named ‘hard_start_xmit’
/home/vortex64/Downloads/vpnclient/interceptor.c: In function ‘remove_netdev’:
/home/vortex64/Downloads/vpnclient/interceptor.c:294: error: ‘struct net_device’ has no member named ‘hard_start_xmit’
make[2]: *** [/home/vortex64/Downloads/vpnclient/interceptor.o] Ошибка 1
make[1]: *** [_module_/home/vortex64/Downloads/vpnclient] Ошибка 2
make[1]: Выход из каталога `/usr/src/linux-headers-2.6.31-20-generic'
make: *** [default] Ошибка 2
Failed to make module "cisco_ipsec.ko".

4. Сильно не расстраиваемся и качаем отсюда патч

5. Кладем его в нашу директорию и выполняем команду

patch < vpnclient-linux.2.6.31.diff

результатом выполнения станет

patching file interceptor.c

6. Теперь вернемся к шагу 2 и заново толкнем vpn_install. В итоге должно получится следущее

* You may wish to change these permissions to restrict access to root.
* You must run "/etc/init.d/vpnclient_init start" before using the client.
* This script will be run AUTOMATICALLY every time you reboot your computer.

7. Загрузим наш скомпиленный модуль

sudo /etc/init.d/vpnclient_init start

и проверим на всякий случай, что все ок

lsmod | grep cisco
cisco_ipsec           595804  0

Все, клиент установлен, модуль загружен, сетевой интерфейс (у меня cipsec0) создан. Теперь кратко опишу процесс настройки Cisco VPN Client для использования его с аутентификацией по сертификату.

Для работы с сертификатами в пакет входит утилитка cisco_cert_mgr. Используем ее следующим образом

cisco_cert_mgr -U -op import

Следуйте указаниям на экране, вам нужно будет указать путь к сертификату (необходимо вводить полный путь, отностительный, к сожалению, он не понимает), пароль к нему и ввести новый с подтверждением.

Если ввели все правильно, получим

Success: certificate imported from path: /home/vortex64/Work/my.cert

Теперь нужно создать профиль подключения. Пример можно посмотреть тут /etc/opt/cisco-vpnclient/Profiles/sample.pcf. Если у вас уже есть настроенное подключение под Windows, можно взять файл профиля оттуда и скопировать его в /etc/opt/cisco-vpnclient/Profiles/.

Все, теперь можно соединяться.

sudo vpnclient connect [имя_профиля]

Результатом подключения будет что-то типа этого:

Результат

Posted in Основное by admin at Март 27th, 2010.
Tags: , ,

Leave a Reply