среда, 30 апреля 2008 г.

Настройка cisco VPN Client под Linux

Недавно в очередной раз пришлось работать из дома, а перезагружаться в небезызвестную операционную систему, чтобы иметь доступ к корпоративным ресурсам, не хотелось, пришлось потратить немного времени и настроить cisco VPN for Linux.
Итак, что же нам необходимо сделать:
  1. Скачать свежую версию клиента либо на сайте cisco, либо найти его где-нибудь в сети, например тут.
  2. Установить его, о чем речь пойдет далее
  3. Как я уже сказал, windows клиент у меня уже успешно настроен, так что, файл настроек (.pcf) мы просто возьмем в windows раздела.
И еще одно замечание. Все операции проводились на почти свежеустановденном Kubuntu 8.04 с ядром 2.6.24-16-generic из репозитариев Canonical (то бишь не самосборное).

Ну думаю со скачиванием самого клиента у нас проблом не возникло, поэтому далее распаковываем его следующей командой (я все делал в домашнем каталоге):
tar xzf vpnclient-linux-4.8.00.0490-k9.tar.gz
Теперь самое главное, то на, что я потратил большую часть времени. Если сейчас просто зайти на каталог vpnclient и запустить скрипт vpn_install, то у нас ничего не получиться :( Ну то есть что-то конечно получиться, но все это упрется в ошибку подобную этой:
Making module
make -C /lib/modules/2.6.24-16-generic/build SUBDIRS=/home/igfud/Desktop/vpnclient modules
make[1]: Entering directory `/usr/src/linux-headers-2.6.24-16-generic'
CC [M] /home/igfud/Desktop/vpnclient/linuxcniapi.o
In file included from /home/igfud/Desktop/vpnclient/Cniapi.h:15,
from /home/igfud/Desktop/vpnclient/linuxcniapi.c:31:
/home/igfud/Desktop/vpnclient/GenDefs.h:113: error: conflicting types for ‘uintptr_t’
include/linux/types.h:40: error: previous declaration of ‘uintptr_t’ was here
make[2]: *** [/home/igfud/Desktop/vpnclient/linuxcniapi.o] Error 1
make[1]: *** [_module_/home/igfud/Desktop/vpnclient] Error 2
make[1]: Leaving directory `/usr/src/linux-headers-2.6.24-16-generic'
make: *** [default] Error 2
Failed to make module "cisco_ipsec.ko".

Ошбка кроется в 2-х файлах cisco VPN client'a, которые мы немного подрпавим. Для этого качаем патч отсюда.
Заходим в каталог vpnclient и применяем только, что скачаннный патч:
cd vpnclient
patch <../vpnclient-linux-2.6.24-final.diff
В овет увидим сообщение, что 2 файла успешно пропатчены.
Теперь можно спокойно запускать vpn_install (не забудьте про права root), отвечать на 4 простых вопроса и....немного подождав, радоваться жизни. По идее теперь ошибок быть не должно, и vpn client можно считать успешно установленным.

Теперь необходимо запустить соответствующую службу:
/etc/init.d/vpnclient_init start
Как я уже говорил, мы воспользуемся готовым pcf файлом с настройками vpn соединения, для этого скопируем его в каталог /etc/opt/cisco-vpnclient/Profiles/
Теперь можно попробовать установить соединение. Для этого воспользуемся следующей командой:
vpnclient connect sample user username pwd password

где, sample - имя файла профиля без расширения pcf, username, password - логин и пароль соответственно.

Вот собственно и все на сегодня. Спасибо ubuntuforums.org за помощь в решении проблемы.

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

vector комментирует...

Спасибо, ваше описание пригодилось. )

Анонимный комментирует...
Этот комментарий был удален администратором блога.
Анонимный комментирует...
Этот комментарий был удален администратором блога.