- Installing and Using AnyConnect on Ubuntu Desktop using the User Interface
- Objective
- Introduction
- AnyConnect Software Version
- Table of Contents
- Installing AnyConnect Secure Mobility Client v4.9.x
- Prerequisites
- Check these other articles out!
- Applicable Devices | Software Version
- Licensing Information
- Step 1
- Step 2
- Step 3
- Step 4
- Step 5
- Step 6
- Step 7
- Step 8
- Using AnyConnect Secure Mobility Client v4.9.x
- Step 1
- Step 2
- Step 3
- Step 4
- Step 5
- Step 6
- Conclusion
- Cisco vpn connect linux
- Подключение к Cisco VPN с Linux Openconnect CLI
- Openconnect
- Перезапись resolv.conf
- Непрерывное подключение к Cisco AnyConnect VPN
Installing and Using AnyConnect on Ubuntu Desktop using the User Interface
The documentation set for this product strives to use bias-free language. For the purposes of this documentation set, bias-free is defined as language that does not imply discrimination based on age, disability, gender, racial identity, ethnic identity, sexual orientation, socioeconomic status, and intersectionality. Exceptions may be present in the documentation due to language that is hardcoded in the user interfaces of the product software, language used based on RFP documentation, or language that is used by a referenced third-party product. Learn more about how Cisco is using Inclusive Language.
Objective
The objective of this article is to guide you through installing and using AnyConnect VPN Client v4.9.x on Ubuntu Desktop version 20.04 using the User Interface (UI).
Introduction
AnyConnect Secure Mobility Client is a modular endpoint software product. It not only provides Virtual Private Network (VPN) access through Secure Sockets Layer (SSL) and Internet Protocol Security (IPsec) Internet Key Exchange version2 (IKEv2) but also offers enhanced security through various built-in modules.
AnyConnect Software Version
Table of Contents
Installing AnyConnect Secure Mobility Client v4.9.x
This toggled section provides details and tips for beginners.
Prerequisites
- You need to purchase client license(s) from a partner like CDW or through your company’s device procurement. There are options for 1 user (L-AC-PLS-3Y-S5) or packets of licenses including one year for 25 users (AC-PLS-P-25-S). Other license options available as well, including perpetual licenses. For more details on licensing, check out the links in the Licensing Information section below.
- Download the latest version of firmware available for your router.(Click here for step-by-step instructions on this process.)
- Ubuntu 20.04 (LTS), 18.04 (LTS), and 16.04 (LTS) .
Check these other articles out!
Applicable Devices | Software Version
Licensing Information
AnyConnect client licenses allow the use of the AnyConnect desktop clients as well as any of the AnyConnect mobile clients that are available. You will need a client license to download and use the Cisco AnyConnect Secure Mobility Client. A client license enables the VPN functionality and are sold in packs of 25 from partners like CDW or through your company’s device procurement.
Want to know more about AnyConnect licensing? Here are some resources:
Step 1
Open a web browser and navigate to the Cisco Software Downloads webpage.
Step 2
In the search bar, start typing ‘Anyconnect’ and the options will appear. Select AnyConnect Secure Mobility Client v4.x.
Step 3
Download the Cisco AnyConnect VPN Client. Most users will select the AnyConnect Pre-Deployment Package (Linux 64-bit) option.
The images in this article are for AnyConnect v4.9.x, which was latest version at the time of writing this document.
If you purchased a license and you are unable to download AnyConnect, call +1 919-993-2724. Select option 2. You will need to know your Cisco ID (the one you use to log into Cisco.com) and the sales order number when you call. They will get that situation all straightened out.
Step 4
Navigate to the folder where you have downloaded the AnyConnect Client Package.
Step 5
The initial download is a tarball archive (*.TAR, several files packed into one), which must be extracted. To extract the files, right- click on the AnyConnect archive and choose Open with Archive Manager. Click Extract.
Step 6
You will see a notification once the extraction is completed. Click Close.
Step 7
Locate the vpn_install.sh file in the extracted folder.
To run the AnyConnect install script, open a Linux Terminal by pressing Ctrl+Alt+T on your keyboard.
Type ‘sudo ./vpn_install.sh’. This will begin the installation process. For more details on the ‘sudo’ command, click here.
Step 8
Accept the terms in the license agreement to complete the installation by typing ‘y’.
Using AnyConnect Secure Mobility Client v4.9.x
Step 1
To access the AnyConnect app, click on the start icon (appears as nine dots on the lower left corner). Choose the Cisco Anyconnect app.
Alternatively, press Super+A (Super key is the windows icon key) on your keyboard to bring up the search bar. Start typing ‘Anyconnect’ and the app will appear.
Step 2
Click on the AnyConnect Secure Mobility Client icon.
Step 3
Enter the IP Address or Hostname of your desired server followed by the port number.
For RV340 family, the default port number is 8443.
Step 4
Enter your Username and Password in the fields provided. Click Connect.
Step 5
Some connections may not be secure using a trusted SSL certificate. By default, AnyConnect Client will block connection attempts to these servers.
Uncheck Block connections to untrusted servers under Preferences to connect to these servers.
Step 6
As soon as the connection is established, the login Banner will appear. Click Accept.
You will also see notification that the Cisco AnyConnect Secure Mobility Client is Connected.
Conclusion
There you have it! You have now successfully learned the steps to install and use the Cisco AnyConnect Secure Mobility Client v4.9.x on Ubuntu Desktop using the UI.
Cisco vpn connect linux
В данной статье рассмотрим как установить VPN соединение и подключиться через удаленный рабочий стол на удаленную машину.
Первым делом, открываем терминал и выполняем обновление списка пакетов:
Следующим шагом установим пакет «openconnect», который включает в себя в том числе и клиент cisco anyconnect для linux.
Для установки пакета набираем следующую команду в терминале:
sudo apt-get install network-manager-openconnect-gnome
Установив openconnect, следующим шагом необходимо установить «Remmina» — ПО для подключения к удаленным рабочим столам. Самый простой способ сделать это — установить через стандартное средство «Ubuntu Software» (находим в меню приложений):
Находим «Remmina» через поиск и устанавливаем:
Кликаем по иконке сетевых подключений в меню справа, далее во всплывающем окне щелкаем «Проводная сеть» — «Параметры соединения»:
В окне «Настройки сети» в разделе «VPN» щелкаем по кнопке «Добавить» (в виде плюса):
Появится окно «Добавить VPN», в котором выбираем «Multi-protocol VPN Client Openconnect»:
Далее в окне с настройками указываем название VPN соединения, шлюз и другие необходимые настройки, после заполнения настроек нажимаем кнопку «Добавить»:
Как видим, у нас появилось новое VPN соединение, для его включения передвигаем ползунок вправо:
В окне авторизации вводим группу, логин и пароль, нажимаем кнопку «Login» для входа:
Когда мы подключены к VPN, необходимо выполнить подключение к удаленному рабочему столу. Для этого запускаем Remmina, выбираем протокол RDP, в адресной строке пишем ip-адрес удаленной машины, затем нажимаем «Enter»:
В окне авторизации RDP указываем данные вашей учетной записи с удаленной машины и нажимаем «ОК»:
Если все ок, попадаем на рабочий стол удаленной машины:
Как вы уже убедились, нет ничего сложного в подключении к VPN на Ubuntu.
Подключение к Cisco VPN с Linux Openconnect CLI
При разработке приложения вы разворачиваете промежуточные версии на контуре внутри своей компании. Но у вашего заказчика может быть свой контур за VPN. Это усложняет CI CD.
Сегодня мы разберемся, как подключиться к Cisco VPN используя openconnect.
Openconnect
OpenConnect – это открытое приложение для подключения к виртуальным частным сетям с реализацией подключений точка-точка, которое изначально было написано в качестве замены проприетарного клиента Cisco AnyConnect SSL VPN.
Причиной для разработки OpenConnect послужила серия недостатков, обнаруженных в решении Cisco под Linux:
- отсутствие поддержки архитектур отличных от i386 (для платформ Linux)
- отсутствие интеграции с NetworkManager
- отсутствие грамотной поддержки форматов пакетов RPM и DEB
- невозможность работы в качестве непривилегированного пользователя
- закрытость кода и др.
По какой-то причине у меня не получилось настроить соединение через AnyConnect, зато получилось через openconnect 😄
Также вам может понадобиться vpn-slice , который есть только для openconnect . Речь о vpn-slice пойдет дальше.
Все манипуляции проводятся на CentOS 7. Для начала устанавливаем openconnect .
sudo apt-get update sudo apt-get install openconnect
После этого можете подключиться к vpn.
sudo openconnect -u user_name --passwd-on-stdin -b
Часто в корпоративных организациях используется прокси, тогда поможет флаг -P .
sudo openconnect -u user_name -P --passwd-on-stdin -b
Нужно будет ввести данные для входа в VPN, после чего вы успешно подключитесь. Флаг -b после успешного соединения сворачивает работу в фоновый режим, чтобы вы могли продолжать пользоваться сервером.
Для отключения от VPN используйте эту команду:
sudo kill all -SIGINT openconnect
Перезапись resolv.conf
При подключении к VPN будет перезаписан файл /etc/resolv.conf будет перезаписан. Из-за этого выход в интернет пропадает.
Эту проблему решает библиотека vpn-slice. Установить ее проще всего через pip3 .
Вы должны установить vpn-slice как root , потому что openconnect или vpnc должны будут иметь возможность вызывать vpn-slice во время работы как root . Например, для изменения /etc/hosts
sudo pip3 install https://github.com/dlenski/vpn-slice/archive/master.zip sudo ln -s /usr/local/bin/vpn-slice /usr/bin/vpn-slice
После этого можно подключиться к впн, при этом указав только нужные хосты.
sudo openconnect -u user_name -P -s "vpn-slice -v --dump 21.16.41.48 21.16.41.49" --passwd-on-stdin -b 298.138.32.210
Таким образом мы подключились к VPN, и получили доступ только к необходимым нам серверам. Доступ в интернет остался.
Непрерывное подключение к Cisco AnyConnect VPN
Мне нужно было поддерживать почти непрерывное VPN-соединение с сервером с другого сервера. Сервер 1 был частью сети, которая обеспечивала защищенный доступ VPN к внешним соединениям через Cisco Anyconnect.
Для этого я использую OpenConnect для подключения к серверу и сценарий bash для непрерывной проверки соединения и, если он отключен, для повторного подключения.
Обратите внимание, что в приведенном ниже подходе пароль vpn хранится в виде открытого текста в файле скрипта, что представляет потенциальную угрозу безопасности. Сценарий должен быть заблокирован, чтобы пользователи без авторизации не могли просматривать его содержимое.
Следовательно, этот подход может быть подходящим только для сервера, которые строго управляются или не доступны другим пользователям.
- Подключится к VPN;
- Каждые n секунд проверяет, подключен ли он;
- Подключается к VPN, если соединение прервано;
В приведенном ниже примере мы создадим сценарий vpn.sh.
#!/bin/bash OPENCONNECT_PID="" RUNNING="" function checkOpenconnect < ps -p $OPENCONNECT_PID &>/dev/null RUNNING=$? #echo $RUNNING &>> reconnect.log > function startOpenConnect < # start here open connect with your params and grab its pid echo "PASSWORD_USER" | sudo openconnect -P PROXY -u USERNAME --authgroup USER_AUTH_GROUP --passwd-on-stdin --servercert pin-sha256:SERT_SERVER --script 'vpn-slice -v --dump IP_SERVER_TWO' VPN_IP & OPENCONNECT_PID=$! > startOpenConnect while true do # sleep a bit of time sleep 15 checkOpenconnect [ $RUNNING -ne 0 ] && startOpenConnect done
Используйте свою команду sudo openconnect для подключения. Выше приведена команда для примера, возможно она вам не подойдет.
Давайте хотя бы заблокируем этот файл, чтобы он был доступен для чтения только root:
sudo chown root:root vpn.sh sudo chmod 711 vpn.sh
Запуск скрипта в фоновом режиме.
Как только вы отладите свой скрипт, вы можете запустить его как фоновый скрипт:
Остановка фонового скрипта.
Используйте ps , чтобы найти PID сценария VPN и процесса openconnect:
Например, в моей системе выполнение приведенного выше дает:
sudo ps -aux | grep vpn root 10524 0.0 0.1 51420 2108 ? S Mar05 0:00 sudo ./vpn.sh root 10525 0.0 0.1 11524 2836 ? S Mar05 0:26 /bin/bash ./vpn.sh root 28443 0.0 0.1 51420 3912 ? S 21:15 0:00 sudo openconnect -u --passwd-on-stdin vpn.example.com root 28445 0.0 0.6 101864 13148 ? S 21:15 0:00 openconnect -u --passwd-on-stdin vpn.example.com ubuntu 29396 0.0 0.0 12944 1084 pts/1 S+ 22:14 0:00 grep --color=auto vpn
Я убил PID 10525 и 28445, вот так: