Поиск по сайту:

Как настроить VPN-сервер Pritunl в Ubuntu 20.04


Это руководство существует для этих версий ОС

  • Ubuntu 20.04 (Focal Fossa)
  • Ubuntu 18.04 (Bionic Beaver)

На этой странице

  1. Предпосылки
  2. Начало работы
  3. Установить сервер Pritunl
  4. Установите MongoDB
  5. Доступ к веб-интерфейсу Pritunl
  6. Установите клиент Pritunl
  7. Подключение клиента Pritunl к серверу Pritunl
  8. Заключение

Pritunl — это простой и удобный VPN-сервер с открытым исходным кодом, который позволяет настроить виртуализацию ваших частных сетей в центрах обработки данных за минуту. Он предоставляет простой и удобный веб-интерфейс и имеет возможность создавать широкий спектр облачных сетей VPN. Он предоставляет официальный клиентский пакет и поддерживает все клиенты OpenVPN для большинства устройств и платформ.

В этом руководстве мы объясним, как настроить VPN-сервер и клиент Pritunl на сервере Ubuntu 20.04.

Предпосылки

  • Система с сервером Ubuntu 20.04.
  • Система под управлением Ubuntu 20.04 Desktop.
  • Пароль root настраивается на сервере.

Начиная

Перед запуском рекомендуется обновить системные пакеты до последней версии. Вы можете обновить все пакеты, выполнив следующую команду:

apt-get update -y

После обновления всех пакетов установите другие необходимые зависимости, выполнив следующую команду:

apt-get install curl gnupg2 wget unzip -y

После установки всех пакетов можно переходить к следующему шагу.

Установить сервер Pritunl

По умолчанию Pritunl недоступен в стандартном репозитории Ubuntu. Поэтому вам нужно будет добавить ключ GPG и репозиторий в вашу систему.

Сначала добавьте ключ GPG с помощью следующей команды:

apt-key adv --keyserver hkp://keyserver.ubuntu.com --recv E162F504A20CDF15827F718D4B7C549A058F8B6B
apt-key adv --keyserver hkp://keyserver.ubuntu.com --recv 7568D9BB55FF9E5287D586017AE645C0CF8E292A

Затем добавьте репозиторий Pritunl с помощью следующей команды:

echo "deb http://repo.pritunl.com/stable/apt focal main" | tee /etc/apt/sources.list.d/pritunl.list

После добавления репозитория обновите кеш репозитория и установите сервер Pritunl с помощью следующей команды:

apt-get update -y
apt-get install pritunl -y

После завершения установки запустите службу Pritunl и включите ее запуск при перезагрузке системы с помощью следующей команды:

systemctl start pritunl
systemctl enable pritunl

Теперь вы можете проверить статус службы Pritunl с помощью следующей команды:

systemctl status pritunl

Вы должны получить следующий результат:

? pritunl.service - Pritunl Daemon
     Loaded: loaded (/etc/systemd/system/pritunl.service; disabled; vendor preset: enabled)
     Active: active (running) since Sat 2021-01-09 11:51:03 UTC; 4s ago
   Main PID: 11487 (pritunl)
      Tasks: 2 (limit: 2353)
     Memory: 181.2M
     CGroup: /system.slice/pritunl.service
             ??11487 /usr/lib/pritunl/bin/python /usr/lib/pritunl/bin/pritunl start

Jan 09 11:51:03 ubunt4 systemd[1]: Started Pritunl Daemon.
Jan 09 11:51:04 ubunt4 pritunl[11487]: /usr/lib/pritunl/lib/python2.7/site-packages/OpenSSL/crypto.py:12: CryptographyDeprecationWarning: >
Jan 09 11:51:04 ubunt4 pritunl[11487]:   from cryptography import x509

Вы также можете проверить порт прослушивания Pritunl с помощью следующей команды:

ss -antpl | grep pritunl

Вы должны получить следующий результат:

LISTEN   0        4096                          *:443                  *:*       users:(("pritunl-web",pid=11523,fd=4))                                         
LISTEN   0        5                         [::1]:9755              [::]:*       users:(("pritunl",pid=11487,fd=5))  

Как только вы закончите, вы можете перейти к следующему шагу.

Установить MongoDB

Pritunl построен на MongoDB, поэтому вам нужно будет установить сервер MongoDB в вашей системе. По умолчанию MongoDB недоступен в репозитории по умолчанию Ubuntu 20.04, поэтому вам нужно будет добавить репозиторий MongoDB в вашу систему.

Сначала загрузите и добавьте ключ MongoDB с помощью следующей команды:

curl -fsSL https://www.mongodb.org/static/pgp/server-4.4.asc | apt-key add -

Затем добавьте репозиторий MongoDB с помощью следующей команды:

echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/4.4 multiverse" | tee /etc/apt/sources.list.d/mongodb-org-4.4.list

После добавления репозитория обновите репозиторий и установите сервер MongoDB с помощью следующей команды:

apt-get update -y
apt-get install mongodb-server -y

После завершения установки запустите службу MongoDB и включите ее запуск при перезагрузке системы с помощью следующей команды:

systemctl start mongodb
systemctl enable mongodb

Вы можете проверить статус службы MongoDB с помощью следующей команды:

systemctl status mongodb

Вы должны получить следующий результат:

? mongodb.service - An object/document-oriented database
     Loaded: loaded (/lib/systemd/system/mongodb.service; enabled; vendor preset: enabled)
     Active: active (running) since Sat 2021-01-09 11:52:12 UTC; 11s ago
       Docs: man:mongod(1)
   Main PID: 11782 (mongod)
      Tasks: 23 (limit: 2353)
     Memory: 41.9M
     CGroup: /system.slice/mongodb.service
             ??11782 /usr/bin/mongod --unixSocketPrefix=/run/mongodb --config /etc/mongodb.conf

Jan 09 11:52:12 ubunt4 systemd[1]: Started An object/document-oriented database.

На данный момент MongoDB запущен и прослушивает порт 27017. Вы можете проверить это с помощью следующей команды:

ss -antpl | grep 27017

Вы должны получить следующий результат:

LISTEN   0        4096                  127.0.0.1:27017          0.0.0.0:*       users:(("mongod",pid=11782,fd=11))      

Как только вы закончите, вы можете перейти к следующему шагу.

Доступ к веб-интерфейсу Pritunl

Теперь откройте веб-браузер и войдите в мастер веб-установки Pritunl, используя URL-адрес https://your-server-ip. Вы должны увидеть следующий экран:

Теперь откройте терминал и выполните следующую команду, чтобы сгенерировать ключ:

pritunl setup-key

Вы должны получить следующий результат:

/usr/lib/pritunl/lib/python2.7/site-packages/OpenSSL/crypto.py:12: CryptographyDeprecationWarning: Python 2 is no longer supported by the Python core team. Support for it is now deprecated in cryptography, and will be removed in the next release.
  from cryptography import x509
08b35282d88d4fce8dc9516cd5d03892

Скопируйте ключ из приведенного выше вывода, затем перейдите в веб-интерфейс, вставьте ключ и нажмите кнопку «Сохранить». Вы будете перенаправлены на страницу входа в Pritunl:

Теперь откройте терминал и выполните следующую команду, чтобы сгенерировать пароль:

pritunl default-password

Вы должны получить следующий результат:

  from cryptography import x509
[undefined][2021-01-09 13:09:17,430][INFO] Getting default administrator password
Administrator default password:
  username: "pritunl"
  password: "27Z4n6yGFZnW"

Скопируйте имя пользователя и пароль из приведенного выше вывода, затем перейдите в веб-интерфейс, введите свое имя пользователя, пароль и нажмите кнопку «Войти». Вы будете перенаправлены на экран начальной настройки:

Измените свой пароль или пользователя, если хотите, затем нажмите кнопку «Сохранить». Вы должны увидеть следующую страницу.

Теперь нажмите кнопку «Добавить организацию». Вы должны увидеть следующую страницу:

Укажите название вашей организации и нажмите кнопку «Добавить». Вы должны увидеть следующую страницу:

Нажмите на кнопку «Добавить пользователя». Вы должны увидеть следующую страницу:

Укажите свое имя пользователя, пин-код и нажмите кнопку «Добавить». Вы должны увидеть следующую страницу:

Теперь перейдите на вкладку Серверы. Вы должны увидеть следующую страницу:

Нажмите на кнопку «Добавить сервер». Вы должны увидеть следующую страницу:

Укажите имя вашего сервера, порт, IP-адрес DNS, виртуальную сеть и нажмите кнопку «Добавить». Вы должны увидеть следующую страницу:

Нажмите кнопку «Присоединить организацию», чтобы прикрепить свою организацию к серверу. Вы должны увидеть следующую страницу:

Нажмите на кнопку Прикрепить. Вы должны увидеть следующую страницу:

Нажмите кнопку Start Server, чтобы запустить VPN-сервер. Вы должны увидеть следующую страницу:

Установить клиент Pritunl

На данный момент сервер Pritunl установлен и настроен. Теперь вам нужно установить и настроить клиент Pritunl на клиентском компьютере.

На клиентском компьютере добавьте ключ Pritunl с помощью следующей команды:

apt-key adv --keyserver hkp://keyserver.ubuntu.com --recv E162F504A20CDF15827F718D4B7C549A058F8B6B
apt-key adv --keyserver hkp://keyserver.ubuntu.com --recv 7568D9BB55FF9E5287D586017AE645C0CF8E292A

После добавления ключа добавьте репозиторий Pritunl с помощью следующей команды:

echo "deb http://repo.pritunl.com/stable/apt focal main" | tee /etc/apt/sources.list.d/pritunl.list

После добавления репозитория обновите репозиторий и установите клиентский пакет Pritunl с помощью следующей команды:

apt-get update -y
apt-get install pritunl-client-electron -y

После завершения установки можно переходить к следующему шагу.

Подключить клиент Pritunl к серверу Pritunl

Далее вам нужно будет открыть клиентское приложение Pritunl и подключиться к VPN-серверу.

Перед запуском перейдите в веб-интерфейс Pritunl, перейдите на вкладку «Пользователи» и загрузите профиль пользователя на клиентскую машину:

Нажмите кнопку загрузки, чтобы загрузить профиль пользователя на клиентский компьютер.

После завершения загрузки извлеките загруженный tar-файл с помощью следующей команды:

tar -xvf user1.tar

Вы должны увидеть извлеченный файл в следующем выводе:

myorg_user1_server1.ovpn

Теперь войдите в клиентское приложение Pritunl из меню «Приложение», как показано ниже:

Нажмите кнопку «Импортировать профиль», чтобы импортировать файл myorg_user1_server1.ovpn из вашей системы. Вы должны увидеть следующий экран:

Теперь нажмите на красную квадратную кнопку. Вы должны увидеть следующий экран:

Теперь нажмите кнопку «Подключиться», чтобы подключиться к VPN-серверу. Вам будет предложено ввести свой пользовательский пин-код, как показано ниже:

Укажите свой пользовательский пин-код и нажмите кнопку «ОК». После подключения вы должны увидеть следующий экран:

Вы также можете проверить VPN-соединение с помощью следующей команды:

ifconfig tun0

Вы должны увидеть следующий вывод:

tun0      Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  
          inet addr:192.168.237.2  P-t-P:192.168.237.2  Mask:255.255.255.0
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1500  Metric:1
          RX packets:3752 errors:0 dropped:0 overruns:0 frame:0
          TX packets:3847 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:100 
          RX bytes:2399700 (2.3 MB)  TX bytes:807236 (807.2 KB)

Теперь весь трафик направляется через ваш VPN-сервер.

Чтобы проверить это, откройте веб-браузер и перейдите на страницу https://whatismyipaddress.com/. Вы должны получить IP-адрес своего VPN-сервера на следующей странице:

Заключение

Поздравляем! вы успешно установили сервер и клиент Pritunl в Ubuntu 20.04. Теперь вы можете анонимно выходить в Интернет, скрывая свою личность. Не стесняйтесь спрашивать меня, если у вас есть какие-либо вопросы.