Настройка сертификата TLS
В этом мануале описано, как включить TSL сертификаты на IP телефонах Akuvox, и показывает пример генерации и загрузки сертификатов на сервер и IP телефон щаг за шагом. Инструкция применима для Akuvox R5X,R6X с версией прошивки 5.0 и выше.
Содержание
Описание
Поскольку для SIP нет специальных протоколов безопасности, подобных HTTPS и FTPS, мы обычно шифруем протокол с помощью TLS, чтобы обеспечить безопасность передачи сообщений SIP. Основной алгоритм работы TLS включает в себя установление сетевого соединения, выбор метода шифрования и сжатия, относящегося к соединению, распознавание двусторонних идентификаций, подтверждение пароля этой передачи, шифрование передачи данных и закрытие соединения. (Для получения более подробной информации, пожалуйста, обратитесь к https://en.wikipedia.org/wiki/Public_key_certificate#TLS_version_1.1) в протоколах шифрования сетевой связи цифровой сертификат необходим для предоставления открытого ключа и закрытого ключа для передачи зашифрованной информации или расшифровки полученной информации. В процессе обмена данными по протоколу TLS клиент должен согласовать ключи, алгоритм шифрования и т. д. с сервером, сервер должен отправить свой сертификат клиенту для идентификации. IP-телефон Akuvox (обратитесь к нам за версией прошивки) поддерживает передачу TLS v1. 0 и стандарт сертификата X. 509, пользователи могут включать или отключать соединение с сервером, который использует ненадежные сертификаты.
Настройка
Есть пять шагов для настройки TLS:
- Создайте сертификат для CA и клиента;
- Установите CA на сервер;
- Настройте TLS (или HTTPS) на сервере, напр. Транспортный протокол, номер порта, метод TLS, способ аутентификации и так далее;
- Загрузите сертификат CA на клиент IP телефона;
- Введите данные SIP аккаунтов и включите TLS для IP телефона.
Загрузка сертификата CA на IP телефон
- Войдите в веб интерфейс IP телефона, откройте “Security(Безопасность → Advanced(Расширенные).”
- Нажмите “Browse(Выбрать файл)” в разделе “Client Certificate Upload(Загрузка сертификата клиента).”
- Выберите локальный файл сертификита (Usually *.pem, *.crt, *.cer, *.der).
- Нажмите “Submit(Подтвердить)” для загрузки сертификата. IP телефон поддерживает 10 сертификатов.
IP телефон поддерживает “Only Accept Trusted Certificates(Принимать только доверенные сертификат),” IP телефон был бы вынужден принимать все сертификаты, если эта функция выключена; когда она включена, IP телефон будет принимать только сертификаты из доверенного списка.
Включение TLS на IP телефоне
- Войдите в веб интерфейс IP телефона, откройте “Account(Аккаунт) → Basic(Базовые).”
- Выберите “TLS” в “Transport Type(Транспортном протоколе)” и нажмите submit(подтвердить).
Пример настройки SIP-TLS MyPBX взят для примера, у различных PBX процессы настройки могут различаться.
Создание сертификата
Используйте инструмент “openssl” на базе LINUX для создания персонального CA сертификата.
- Создайте рут файл для сертификата : root.key
Command(пример команды для терминала): openssl genrsa -out root.key 1024
Пример:
root@ubuntu-64bit:/home/work/CA# openssl genrsa -out root.key 1024 Generating RSA private key, 1024 bit long modulus ....................................................................... . ...................+++ ..........................................+++ e is 65537 (0x10001)
- Создание файла сертификата суперпользователя: root.csr
Command: openssl req -new -key root.key -out root.csr
Пример:
root@ubuntu-64bit:/home/work/CA# openssl req -new -key root.key -out root.csr You are about to be asked to enter information that will be incorporated into your certificate request. What you are about to enter is what is called a Distinguished Name or a DN. There are quite a few fields but you can leave some blank For some fields there will be a default value, If you enter '.', the field will be left blank. ----- Country Name (2 letter code) [AU]:CN State or Province Name (full name) [Some-State]:FJ Locality Name (eg, city) []:XM Organization Name (eg, company) [Internet Widgits Pty Ltd]:Akuvox Organizational Unit Name (eg, section) []:Akuvox Common Name (eg, server FQDN or YOUR name) []:Akuvox_CA Email Address []:support@akuvox.com
Please enter the following 'extra' attributes to be sent with your certificate request A challenge password []:123456 An optional company name []: root@ubuntu-64bit:/home/work/CA#
- Создайте действительный на 10 лет рут файл на основе текущих данных : root.crt
Command: openssl x509 -req -days 3650 -sha1 -extensions v3_ca -signkey root.key -in root.csr -out root.crt
Пример:
root@ubuntu-64bit:/home/work/CA# openssl x509 -req -days 3650 -sha1 - extensions v3_ca -signkey root.key -in root.csr -out root.crt Signature ok subject=/C=CN/ST=FJ/L=XM/O=Akuvox/OU=Akuvox/CN=Akuvox/emailAddress=supp ort@akuvox.com Getting Private key
- Создание сертификата для сервера: server.key
Command: Openssl genrsa -out server.key 1024
Пример:
root@ubuntu-64bit:/home/work/CA# openssl genrsa -out server.key 1024 Generating RSA private key, 1024 bit long modulus ......++++++ .++++++ e is 65537 (0x10001) root@ubuntu-64bit:/home/work/CA#
- Создание файла сертификата для сервера: server.csr(Сгенерируйте Certificate Signing Request(Запрос Подписи Сертификата)(CSR)он будет сконвертирован в собственный файл сервера, подписанный через CA, введите персональные данные)
Command : openssl req -new -key server.key -out server.csr
Пример:
root@ubuntu-64bit:/home/work/CA# openssl req -new -key server.key -out server.csr You are about to be asked to enter information that will be incorporated into your certificate request. What you are about to enter is what is called a Distinguished Name or a DN. There are quite a few fields but you can leave some blank For some fields there will be a default value, If you enter '.', the field will be left blank. ----- Country Name (2 letter code) [AU]:CN State or Province Name (full name) [Some-State]:FJ Locality Name (eg, city) []:XM Organization Name (eg, company) [Internet Widgits Pty Ltd]:Akuvox Organizational Unit Name (eg, section) []: Common Name (e.g. server FQDN or YOUR name) []:192.168.10.16 Email Address []:support@Akuvox.com Please enter the following 'extra' attributes to be sent with your certificate request A challenge password []:12345678 An optional company name []: root@ubuntu-64bit:/home/work/CA# There must have difference between the Common Name of Server’s and CA’s certificate.
- Создайте 2-летний сертификат для сервера на основе текущей информации: server.crt.
Command: openssl x509 -req -days 730 -sha1 -extensions v3_req -CA root.crt -CAkey root.key -CAserial root.srl -CAcreateserial -in server.csr -out server.crt
Пример:
root@ubuntu-64bit:/home/work/CA# openssl x509 -req -days 730 -sha1 - extensions v3_req -CA root.crt -CAkey root.key -CAserial root.srl - CAcreateserial -in server.csr -out server.crt Signature ok subject=/C=CN/ST=FJ/L=XM/O=Akuvox/OU=Akuvox/CN=Akuvox/emailAddress=supp o rt@Akuvox.com Getting CA Private Key root@ubuntu-64bit:/home/work/CA# root.crt должен быть загружен на IP телефон(клиент), server.crt и server.key должны быть загружены на сервер, используйте “cat” когда требуется .pem : cat server.key server.crt > server.pem
Загрузка сертификат на MyPBX
- Go to “PBX → Advanced Settings→Certificates,” click “Upload Certificate.”
- Выберите “Type(Тип)” как “PBX Certificate,” нажмите “Browse” выберите “server.pem” для загрузки и сохранения.
- Перезагрузите PBX для включения сертификатов.
Настройки SIP для сервера
- Откройте “Advanced Settings(Расширенные настройки) → SIP Settings(Настройки SIP),” включите TLS и укажите TLS порт, выберите метод аутентификации и передачи, сохраните.
- Перейдите “Line Status(Активность) → Extensions Status(Активность аккаунтов),” выберите аккаунт
- Выберите “TLS” в качестве “Transport(Транспортного протокола)” в настройках VoIP и сохраните. Нажмите “Apply Changes” для применения настроек.