Использование Let’s Encrypt с Kerio Connect – Блог системного администратора

Использование Let's Encrypt с Kerio Connect - Блог системного администратора Сертификаты

Описание

  • В строке «Select a product» выбираем «Kerio Control«, а затем — нужную версию (очень желательно, чтобы версии клиента и сервера совпадали), после чего нажимаем «Show files».
  • В разделе «Installation packages» находим Kerio Control VPN Client под нужную версию Windows.

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

После этого появится стандартное окно приветствия программы установки, которое можно пропустить не читая, нажав кнопку «Далее». В следующем окне программа установки спросит куда устанавливать Kerio Control VPN Client, по умолчанию устанавливая его в папку Program Files.

Во время установки может возникнуть окно с предупреждением о невозможности проверить издателя устанавливаемого драйвер. Обязательно нужно нажать на кнопку «Все равно установить этот драйвер».
Использование Let's Encrypt с Kerio Connect - Блог системного администратора

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

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

[из песочницы] настройка ipsec vpn-сервера в kerio control и клиентского vpn-подключения (на примере ос windows)

Те, кто используют в работе файрвол Kerio Control (а возможно и те, кто не используют), скорее всего в курсе, что начиная с 8-й версии этого продукта появилась возможность создания VPN-туннелей не только с использованием собственной проприетарной технологии от Kerio, но и с помощью стандартного L2TP и IPsec для безопасности соединения.

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

Собственно настройка VPN-сервера и клиентского подключения для опытного человека не представляет проблемы, плюс на сайте производителя есть пара мануалов (в том числе и на русском), но в процессе всё же есть пара неочевидных моментов, что и подвигло на написание собственного варианта с картинками.

Текст далее в формате «скриншот с типовыми настройками» -> «пояснения», для краткости проприетарная версия VPN-сервера именуется как Kerio-VPN, L2TP и IPsec — как IPSec-VPN.

1. В WEB-консоли управления Kerio Control в разделе «Интерфейсы» проверяем, что «VPN-сервер» включен:

2. Делаем двойной клик на нём (или жмём кнопку «Правка» внизу) для его настройки:

2.1. Общие настройки и настройк IPSec VPN:

Пункты 1, 2 — ставим галочки для выбора нужной реализации VPN-сервера. Обычно задействуем обе;

Пункты 3-5 касаются способа проверки подлинности при авторизации клиента: либо с использованием сертификата, либо с использованием заранее созданного ключа (пароля).

Сервер может поддерживать как оба способа (обычно), так и какой-то один. Клиент при подключении использует какой-то один способ.

Использование сертификата требует дополнительной установки этого сертификата в операционной системе клиента, что требует бOльших усилий (а иногда и невозможно), по-этому такой способ используется редко, в основном в больших организациях, использующих службы каталогов.

Чаще используется проверка подлинности с помощью ключа (достаточно длинны и сложности);

Про сертификаты:  Подготовка экспертов ЕГЭ по проверке выполнения заданий с развернутым ответом по математике – Педкампус – профессиональная переподготовка и повышение квалификации

Пункт 6 — Если Kerio Control не подключен к домену, или для авторизации на сервере VPN используются пользователи из локальной базы Kerio Control, нужно:

  1. поставить эту галочку;
  2. в свойствах пользователя поставить галочку «Сохранить пароль в формате, совместимом с MS-CHAP v2».

В примере Kerio Control подключен к домену, поэтому галочка не стоит.

2.2. Настройки Kerio-VPN:

Пункт 7 — выбираем сертификат из имеющихся в Kerio Control, используемый для проверки подлинности при подключении;

Пункт 8 — порт, прослушиваемый Kerio Control для подключения клиентов. В большинстве случаев стоит оставить стандартный — 4090;

Пункт 9 — если клиентам нужен доступ в Интернет, а не только к ресурсам локальной сети — ставим тут галочку. Так же правила трафика (см. ниже) должны разрешать такой доступ.

2.3. Настройки DNS-сервера:

Пункт 10 — определяет вариант, каким образом Kerio Control отвечает на DNS-запросы клиента:

  • либо он сам выступает в роли DNS-сервера (стандартно если Kerio Control не подключен к домену),
  • либо пересылает запросы на DNS-сервер домена (если Kerio Control подключен к домену). На скриншоте приведён второй вариант.

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

3. В разделе «Правила трафика» проверяем правила, касающиеся VPN:

Пункты 1,2 — разрешают подключение VPN-клиентов к серверу Kerio Control по IPSec-VPN (пункт 1) и по Kerio-VPN (пункт 2).

На скриншоте приведены настройки, разрешающие подключение по любому способу;

Пункт 3 — разрешает VPN-клиентам доступ в Интернет (так же должна стоять галочка, см. выше раздел 2.2, пункт 9). Если клиент должен осуществлять доступ в Интернет «обычным» способом, через свой основной шлюз — удаляем «Клиенты VPN);

Пункт 4 — разрешает доступ VPN-клиентам к ресурсам локальной сети. Собственно, наиболее частая цель данных манипуляций.

4. В разделе „Пользователи“ проверяем права пользователей, которым нужно подключатся по VPN:

4.1. Если Kerio Control не подключен к домену, или пользователь не в домене, должна стоять галочка „Сохранить пароль в формате, совместимом с MS-CHAP v2“ (плюс галочка, см. выше раздел 2.1, пункт 6):

Так же должна стоять галочка „Пользователи могут подсоединятся через VPN“. В случае, если нужно разрешить подключение по VPN для всех пользователей Kerio Control — можно использовать „Шаблон пользователя“.

При необходимости можно назначить VPN-клиенту статический IP-адерс:

4.2. Если Kerio Control подключен к домену, для доменных пользователей — аналогично разделу 4.1, за исключением „Сохранить пароль в формате, совместимом с MS-CHAP v2“ — этой галочки там нет.

Это все минимальные настройки для функционирования VPN-сервера Kerio Control.

Так же рассмотрим настройку клиентского VPN-подключения на примере ОС Windows 7 (в остальных версиях этой ОС настройка выполняется схожим способом).

1. Открываем „Центр управления сетями и общим доступом“ — зайдя „Панели Управления“ или сделав правый клик мышью (далее — ПКМ) на значке сетевых подключений в трее:

2. В „Центре управления сетями и общим доступом“ выбираем „Настройка нового подключения к сети“:

3. В появившемся окне выбираем „Подключение к рабочему месту — Настройка телефонного или VPN-подключения к рабочему месту“, потом „Далее“:

4. Выбираем „Использовать моё подключение к Интернету (VPN)“:

5. В окне создания подключения вводим:

Creating certificates signed by a certification authority

To use a certificate signed by a trustworthy certification authority, you must first generate a certificate request, send it to a certification authority and import a signed certificate upon receiving it.

  1. Open section Configuration > SSL Certificates and click on New > New Certificate Request.
  2. Fill in the information and save.
  3. Select the certificate and click on the Export > Export Request button.
  4. Save the certificate to your disk and send it to a certification authority.
Про сертификаты:  ЖАВЕЛЬ СОЛИД. Информация о дезинфицирующем средстве - состав, действующие вещества, фасовка, производитель препарата ЖАВЕЛЬ СОЛИД.

Once you obtain your certificate signed by a certification authority, click on Import > Import Signed Certificate from CA.

To obtain your certificate:

  1. Go to section Configuration > SSL Certificates.
  2. Click on Import > Import Signed Certificate from CA.
  3. To enable the server to use this certificate, select the certificate and click on the Set as Active button.

Creating self-signed certificates

To create a self-signed certificate, follow these steps:

  1. Go to section Configuration > SSL Certificates.
  2. Click on New > New Certificate.
  3. Fill in the information.
  4. Click OK.

To enable the server to use this certificate, select the certificate and click on the Set as Default button (Set as Active in older versions).

Intermediate certificates

Kerio Connect allows authentication by intermediate certificates. To make authentication by these certificates work, follow these steps to add the certificates to Kerio Connect:

  1. In a text editor, open the server certificate and the intermediate certificate.
  2. Copy the intermediate certificate below the server certificate into the server certificate file (*.crt) and save. The file may look like this:
-----BEGIN CERTIFICATE-----
MIIDOjCCAqOgAwIBAgIDPmR/MA0GCSqGSIb3DQEBBAUAMFMxCzAJBgNVBAYTAl
MSUwIwYDVQQKExxUaGF3dGUgQ29uc3VsdGluZyAoUHR5KSBMdGQuMR0wGwYDVQ
     ..... this is a server SSL certificate ...
ukrkDt4cgQxE6JSEprDiP nShuh9uk4aUCKMg/g3VgEMulkROzFl6zinDg5grz
QspOQTEYoqrc3H4Bwt8=
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
MIIDMzCCApygAwIBAgIEMAAAATANBgkqhkiG9w0BAQUFADCBxDELMAkGA1UEBh
WkExFTATBgNVBAgTDFdlc3Rlcm4gQ2FwZTESMBAGA1UEBxMJQ2FwZSBUb3duMR
     ..... this is an intermediate SSL certificate which
           signed the server certificate...
5BjLqgQRk82bFi1uoG9bNm E6o3tiUEDywrgrVX60CjbW1 y0CdMaq7dlpszRB
t14EmBxKYw==
-----END CERTIFICATE-----
  1. Save the settings.

Multiple certificates

Since Kerio Connect 9.0.2, you can import certificates for different domains to Kerio Connect. Kerio Connect then selects and uses the appropriate certificate.

If multiple certificates exist for a single domain, Kerio Connect selects a certificate according to the following order:

  1. Trusted certificate for the domain hostname.
  2. Self-signed certificate for the domain hostname.
  3. Valid certificate for the domain hostname.
  4. Expired certificate for the domain hostname.
  5. Trusted wildcard certificate.
  6. Self-signed wildcard certificate.
  7. Valid wildcard certificate.
  8. Expired wildcard certificate.
  9. Default server certificate.

Supported certificates

Kerio Connect supports certificates in the following formats:

  • Certificate (public key) — X.509 Base64 in text format (PEM).
    The file has suffix .crt.
  • Private key — the file is in RSA format and it has suffix
    .key with 4KB max.

Использование let’s encrypt с kerio connect

Использование Let's Encrypt с Kerio Connect - Блог системного администратора
Let’s Encrypt возможно лучшая вещь, произошедшая в Интернет за последние лет десять. Это сервис, предоставляющий абсолютно бесплатно криптографические сертификаты X.509 для TLS шифрования (HTTPS). Главный минус, что сертификат выдается на 90 дней, но мы попробуем автоматизировать процедуру замены сертификата.

Отключаем http
Остановите в Kerio Connect если он запущен и установите режим запуска вручную, чтобы он не активировал себя снова при перезапуске. Измените служебный порт HTTPS на 8843 в панели администратора. Установка не будет работать иначе, потому что Certbot нуждается в портах 80 и 443 для проверки домена и получения сертификата.

Установим Nginx
Так как мы не хотим что-либо делать вручную, а также иметь возможность использовать стандартные веб-порты, нам необходимо установить реверс-прокси перед Kerio Connect

mkdir -p /var/www/mail
chown www-data:www-data /var/www/mail
apt-get install nginx ssl-cert

Создадим файл /etc/nginx/sites-available/kerio-connect.conf со следующим содержанием

server {
listen 80;
server_name nash_site; # заменить на адрес своего сайта
server_name_in_redirect off;
rewrite ^ https://$server_name$request_uri? permanent;
}

server {
listen 443 ssl;
server_name nash_site; # заменить на адрес своего сайта

ssl_certificate /etc/ssl/certs/ssl-cert-snakeoil.pem; 
ssl_certificate_key /etc/ssl/private/ssl-cert-snakeoil.key;

location /.well-known {
alias /var/www/mail/.well-known;
}

location / {
proxy_pass https://localhost:8843;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Remote-Port $remote_port;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_redirect off;
chunked_transfer_encoding on;
proxy_connect_timeout 6000;
proxy_send_timeout 6000;
proxy_read_timeout 6000;
send_timeout 6000;
}
}

Слинкуем сайт с nginx:

ln -s /etc/nginx/sites-available/kerio-connect.conf /etc/nginx/sites-enabled/kerio-connect.conf

Проверим конфигурацию:

nginx -t

Если ошибок нет, перегружаем nginx:

systemctl restart nginx.service

Установка Certbot

Про сертификаты:  ИЗОВОЛ Ст-75 | АПРИОР - группа компаний

Теперь установим программу, которая будет за нас обновлять сертификаты

wget https://dl.eff.org/certbot-auto
chmod a x certbot-auto

Запустим

./certbot-auto

Создадим сертификат.

./certbot-auto certonly --webroot -w /var/www/mail -d nash_site

Если вы запускаете в первый раз, вам нужно будет ввести свой адрес электронной почты для экстренной ситуации, например, для отзыва сертификата. Это нужно сделать только один раз и после этого SSL-сертификат будет создан.

Начинаем использовать

Изменим в файле /etc/nginx/sites-available/kerio-connect.conf строки

ssl_certificate /etc/ssl/certs/ssl-cert-snakeoil.pem;
ssl_certificate_key /etc/ssl/private/ssl-cert-snakeoil.key;

на:

ssl_certificate /etc/letsencrypt/live/nash_site/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/nash_site/privkey.pem;

Перезагрузим Nginx

systemctl restart nginx.service

Чтобы упростить обновление Kerio Connect, просто свяжите созданный сертификат и ключ с соответствующей папкой внутри иерархии Kerio Connect

ln -s /etc/letsencrypt/live/nash_site/fullchain.pem /opt/kerio/mailserver/sslcert/mail.crt
ln -s /etc/letsencrypt/live/nash_site/privkey.pem /opt/kerio/mailserver/sslcert/mail.key

Теперь заходим в панель управления Kerio Connect, выбираем Configuration > SSL Certificates и смотрите что там за сертификаты. Выбирайте установленный от Let’s Encrypt и делайте его активным.
Все, теперь при заходе на Ваш сайт nginx будет автоматически перебрасывать соединение на https, а браузер не будет ругаться на неправильный сертификат.

Обновление.

Осталось автоматизировать процесс перевыпуска сертификатов.
Просто запустим:

./certbot-auto renew

Если сертификат близок к истечению срока действия, он будет автоматически обновлен, в противном случае он будет храниться до следующего запуска.

Сперва скопируем Certbot в удобное место. Например, в /usr/local/bin

cp certbot-auto /usr/local/bin/

Чтобы получить новый сертификат, необходимо перезапустить службы после успешного продления. Создайте скрипт /root/certbot-post-hook.sh со следующим содержимым:

#!/bin/sh
systemctl restart nginx.service
systemctl restart kerio-connect.service

Сделаем его исполняемым и проставим права:

chmod 500 /root/certbot-post-hook.sh
chown root:root /root/certbot-post-hook.sh

Мы будем проверять необходимость перевыпуска сертификата каждую ночь, в 3 часа утра.
Создадим файл /etc/cron.d/certbot:

shell=/bin/sh
path=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
0 3 * * * root perl -e 'sleep int(rand(3600))' && certbot-auto -q renew --post-hook "/root/certbot-post-hook.sh"

Ошибка 1920

В определенных случаях, при установке Kerio Control VPN Client версии 9.2.4 под Windows 7 x64, может возникнуть ошибка 1920:

Error 1920. Service Kerio Control VPN Client Service (KVPNCSvc) failed to start. Verify that you have sufficient privileges to start system services.

Это связано с тем, что файл установки клиента не может установить не подписанные драйвера, необходимые для работы VPN клиента Kerio. Решается это следующим образом (согласно официальной документации):

  1. Отключаем антивирус и фаирволл на вашем компьютере.
  2. Затем необходимо полностью удалить Kerio Control VPN Client с вашего компьютера. Для полной очистки компьютера от всех следов присутствия данной программы на компьютере, возможно понадобится стороннее обеспечение, вроде бесплатной пробной версии Revo Uninstaller.
  3. В «Диспетчере устройств» необходимо открыть сетевые адаптеры и если среди них присутствует Kerio Virtual Network Adapter — удалить его.
  4. Выполняем перезагрузку компьютера.
  5. Скачиваем версию 9.2.3 по этой ссылке. Устанавливаем эту версию под пользователем с правами администратора.
  6. После установки версии 9.2.3 идем на официальный сайт за загрузкой версии 9.2.4. Скачиваем её, но не торопимся запускать.
  7. Открываем свойства скачанного файла, и находим в самом низу кнопку «Разблокировать», которую необходимо нажать.
    Использование Let's Encrypt с Kerio Connect - Блог системного администратора
  8. Запускаем файл установки с правами администратора, и устанавливаем программу как описано в самом начале статьи.

источник

Парсер хабра

Вас тоже достает, когда автор переносит топик в черновик?

Установка и настройка kerio control vpn client под windows

Kerio Control VPN Client используется для подключения компьютера к серверу Kerio Control VPN. Установка и настройка клиентоской части не должна вызвать никаких проблем даже у совсем малограмотных пользователей, но если вы не уверены в своих действиях — смело ориентируйтесь на эту статью!

Оцените статью
Мой сертификат
Добавить комментарий