Asterisk защита паролей

477
Tono Nam

Я использую звездочку на Raspberry Pi 3 ; поэтому я хочу защитить пароли. Кто-то может извлечь SD-карту, и пароли будут в виде простого текста! Я знаю, что могу зашифровать всю ОС, но было бы неплохо, если бы я мог избежать этого, поскольку мне просто нужно защитить один файл.

Есть 3 типа ключей / паролей, которые я хочу защитить. До сих пор мне удалось защитить 2 дерева паролей.

В любом случае вот мой старый sip.confнезащищенный:

[general]  keepalive=30 bindport=5060 ... etc  ; Allow tls !  tlsenable=yes tlsbindaddr=0.0.0.0 tlscertfile=/keys/asterisk.pem ; <---- 1st key unprotected tlscafile=/keys/ca.crt tlscipher=ALL tlsclientmethod=tlsv1   ; Peers info --------------------------------------------- [user1] secret=somePassword ; < -------- 2nd key unprotected type=peer ... etc  [user2] ... etc.. ; more unprotected keys ; ----------------------------------------------------------  ; elastic sip trunks used to make outbound calls ----------- [Trunk-Provider-1] ;  type=peer host=someProvider.com secret=plainTextPassword ; <------------ 3rd password unprotected username=foo  ; --------------------------------------------------------- 

А вот и мой новый sip.conf«защищенный»:

[general]  keepalive=30 bindport=5060 ... etc  ; Allow tls !  tlsenable=yes tlsbindaddr=0.0.0.0  tlscertfile=/dev/shm/keys/asterisk.pem ; <---- 1st key located on memory (/dev/shm/) tlscafile=/dev/shm/keys/ca.crt ; same thing. File is on memory and NOT on disk.  tlscipher=ALL tlsclientmethod=tlsv1   ; Peers info --------------------------------------------- [user1]  md5secret=4a8e71480c5b1ef0a5d502a8eb98576 ; < -------- 2nd key hashed (protected) type=peer ... etc  [user2] ... etc.. ; more hashed keys ; ----------------------------------------------------------  ; elastic sip trunks used to make outbound calls ----------- [Trunk-Provider-1] ;  type=peer host=omeProvider.com secret=password-Of-Provider ; <------------ 3rd password I do not know how to protect this :/ ? username=foo ; --------------------------------------------------------- 

Поэтому я должен защищать 3 типа ключей / паролей.

  1. Ключи сертификатов Сертификаты, используемые для шифрования вызовов. Я защищаю это, загружая его при загрузке компьютера и помещая их в память ( /dev/shm/). Если компьютер выключится, файлы будут потеряны.

  2. Пароли IP-телефонов (одноранговые) Это пароль, используемый телефонами (одноранговыми). Чтобы защитить их, я хеширую их. В этой статье объясняется, как это сделать: https://www.voip-info.org/wiki/view/Asterisk+sip+md5secret

  3. Пароли провайдера (используются для исходящих звонков) Я не знаю, как защитить эти пароли. Я думал о перемещении расположения моего файла sip.conf в память, но это не так просто. Это требует, чтобы переместить все файлы конфигурации, я верю.

0
Одним из решений может быть динамическое добавление SIP-транка? Есть ли способ, которым я могу динамически добавлять узлы sip в asterisk, не добавляя их в sip.conf? Tono Nam 6 лет назад 0
Да, вы можете использовать MySQL в реальном времени и таблицу в памяти в MySQL. arheops 6 лет назад 0

1 ответ на вопрос

0
Tono Nam

Отвечая на мой собственный вопрос:

Я переместил файл /etc/asterisk/sip.conf, создав символическую ссылку. https://stackoverflow.com/a/1951752/637142

# 1. Delete /etc/asterisk/sip.conf we do not want that file on disk. It contains passwords! rm /etc/asterisk/sip.conf  # 2. create sip.conf on memory (/dev/shm/sip.conf) touch /dev/shm/sip.conf ... add configuration and passwords... to that file  # 3. Trick asterisk by placing a symbolic link.  # Point file /etc/asterisk/sip.conf ---> /dev/shm/sip.conf ln -s /dev/shm/sip.conf /etc/asterisk/sip.conf 

Нет, когда я получаю доступ к /etc/asterisk/sip.conf, на самом деле я получаю доступ к /dev/shm/sip.conf!

Что вы делаете, когда теряете власть? Duncan X Simpson 5 лет назад 0

Похожие вопросы