24 вересня, Неділя, 2023
A- A A+

security elastix pc-serv

У цій статті я розповім про базове налаштування безпеки Elastix. Процес установки - звичайний текстовий режим линукс інсталятора, дистрибутиви можно скачати з оф. сайту elastix.org, Або із sourceforge.net, вибравши підходящу вам версію та ОС.

Я на даний момент використав просту 2.5 версію (пояснювати чому не буду)

Недоліком даної версії є те що вона для CentOS 5.11 версії, яка вже не підтримується :( Але про це не зараз...

Захист Elastix це, мабуть, якраз найважливіше в налаштуванні. Отже, припустимо, що дистрибутив ми встановили, він коректно завівся і просить авторизуватись.

Перш за все необхідно оновити всі алежності, щоб отримати максимально оновлену систему, незважаючи на версії

І тут починаються незначні проблеми, перша це ось таке повідомлення

YumRepo Error: All mirror URLs are not using ftp, http[s] or file.
 Eg. Invalid release/
removing mirrorlist with no valid mirrors: /var/cache/yum/extras/mirrorlist.txt

Не може найти репозиторії длоновлення

В консолі додаєм нові репи для 5.11

echo "http://vault.centos.org/5.11/os/x86_64/" > /var/cache/yum/base/mirrorlist.txt
echo "http://vault.centos.org/5.11/extras/x86_64/" > /var/cache/yum/extras/mirrorlist.txt
echo "http://vault.centos.org/5.11/updates/x86_64/" > /var/cache/yum/updates/mirrorlist.txt
yum update

І спокійно чекаєм на на обновлення всіх доступних пакетів, звичайно підтверджуєм по вимозі інсталятор.

Так як наш сервер знаходиться за НАТОМ то необхідно прописати такі налаштування у файл sip_general_custom.conf

externip=5.5.5.5
localnet=192.168.200.0/255.255.255.0
localnet=192.168.201.0/255.255.255.0
nat=yes canreinvite=no registertimeout=20 registerattempts=0 maxexpiry=3600 minexpiry=60

Далі продовжимо обмежувати доступ до нашої телефонії

Найнадійнішим способом обмеження доступу до системи це iptables

Перевіряємо що в нас за правила наявні зараз

iptables -L -n - бачимо що все пусто

і тут необхідно проаналізувати з яких ІР адрес буде доступна наша телефонія

в моєму випадку це 4 зовнішні адреси та 2і внітрішні мережі

# HOST Trunk IP провайдера номерів
iptables -A INPUT -s 89.89.89.89/22 -d 192.168.100.21/24 -j ACCEPT
#Дозволені ІР адреси та підмережі
iptables -A INPUT -s 176.176.176.176 -d 192.168.100.20/24 -j ACCEPT
iptables -A INPUT -s 176.11.176.177 -d 192.168.100.20/24 -j ACCEPT
iptables -A INPUT -s 176.15.176.178 -d 192.168.100.20/24 -j ACCEPT
iptables -A INPUT -s 176.25.176.178 -d 192.168.100.20/24 -j ACCEPT
iptables -A INPUT -s 192.168.200.0/24 -d 192.168.100.20/24 -j ACCEPT
iptables -A INPUT -s 192.168.201.0/24 -d 192.168.100.20/24 -j ACCEPT
#Заборонити всім
iptables -A INPUT -d 192.168.100.20/24 -j DROP

І зберігаєм налаштування, щоб після перезавантаження системи нічого не пропало /sbin/service iptables save service iptables restart

Перевірити чи все збереглось можно у файлі /etc/sysconfig/iptables

Для того щоб це все працювало за НАТОМ в налаштуваннях конфіг файла вписуєм у файлі /etc/asterisk/sip_general_custom.conf

allowguest=no
externip=5.5.85.5
localnet=192.168.200.0/255.255.255.0 
localnet=192.168.201.0/255.255.255.0
nat=yes canreinvite=no registertimeout=20 registerattempts=0 maxexpiry=3600 minexpiry=60

service asterisk restart

Якщо ви не зробите ці основні налаштування з IPTABLES, то вас чекає ось таке неприємне дійство ботів як намагатимуться підібрати паролі до ваших SIP акаунтів, тому варто не лишатись байдужим і створювати хороші паролі (Hjhj^^$!!@DKdksHFF)

В мене були спроби підбору пароля ботом

[2017-05-15 17:04:15] NOTICE[14651]: chan_sip.c:28487 handle_request_register: Registration from '519 ' failed for '51.15.65.106:47963' - Wrong password
[2017-05-15 17:04:37] NOTICE[14651]: chan_sip.c:28487 handle_request_register: Registration from '520 ' failed for '51.15.65.106:33612' - Wrong password

Будьте обережні з налаштуваннями та краще проконсультуйтесь з хорошими адміністраторами