Per proteggere il nostro sistema da "gente" malintenzionata :) possiamo installare un firewall software che ci permette di gestire tutte le porte di cui abbiamo bisogno per far si che Asterisk funzioni alla perfezione.
Nel nostro caso installeremo iptables:
yum install iptables
Adesso creiamo un file di testo dove andiamo a definire le regole del nostro Firewall
nano /etc/sysconfig/iptables
e copiamo le seguenti linee:
# In maniera predefinita blocca tutto il traffico in entrata e ruotato
# Permetti tutto il traffico in entrata
*filter
:INPUT DROP [0:0]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [0:0]
# Porta Protocollo Dundi
-A INPUT -p udp --dport 4520 -j ACCEPT
# Porta IAX
-A INPUT -p udp --dport 4569 -j ACCEPT
# Porta SIP
-A INPUT -p udp --dport 5060 -j ACCEPT
# Porte RTP media (audio/video)
-A INPUT -p udp --dport 10000:20000 -j ACCEPT
# Permetti traffico SSH
-A INPUT -p tcp --dport 25000 -j ACCEPT
# Permetti ping della macchina
-A INPUT -p icmp --icmp-type ping -j ACCEPT
# Permetti tutto il traffico locale
-A INPUT -i lo -j ACCEPT
COMMIT
Se abbiamo installato Webmin ricordiamoci di abrire la porta relativa. Se per connetterci da remoto al nostro server linux usando SSH, abbiamo deciso di usare la porta 25000, dobbiamo configurarla in questo file (vedi sopra).
Una volta che abbiamo terminato salviamo il file e facciamo partire Iptables
Importante: Se stiamo lavorando con un server remoto accertiamoci che la configurazione sia corretta altrimenti rischiamo di non poter più accedere al server via SSH.
service iptables start
nel caso che già lo avevamo installato dobbiamo farlo ripartire con:
service iptables restart
Apparirà:
Flushing firewall rules: [ OK ]
Setting chains to policy ACCEPT: filter [ OK ]
Unloading iptables modules: [ OK ]
Applying iptables firewall rules: [ OK ]
Se riceviamo un errore dobbiamo ricontrollare la configurazione per vedere dove ci siamo sbagliati.
Verifichiamo que tutto sia a posto:
iptables -L
Chain INPUT (policy DROP)
target prot opt source destination
ACCEPT all -- anywhere anywhere state RELATED,ESTABLISHED
ACCEPT udp -- anywhere anywhere udp dpt:4520
ACCEPT udp -- anywhere anywhere udp dpt:iax
ACCEPT udp -- anywhere anywhere udp dpts:sip
ACCEPT udp -- anywhere anywhere udp dpts:ndmp:dnp
ACCEPT all -- anywhere anywhere
ACCEPT icmp -- anywhere anywhere icmp echo-request
ACCEPT tcp -- anywhere anywhere tcp dpt:25000
Chain FORWARD (policy DROP)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
Questa è una configurazione di base e molto semplice. Per approfondire il tema vi consiglio di leggere questo manuale
Per terminare dobbiamo dire a Asterisk che utilizzi le porte UDP dalla 10000 alla 20000 per il trasporto di audio/video.
nano /etc/asterisk/rtp.conf
Togliamo (se è presente) il punto e virgola prima di [general]
e modifichiamo queste due linee:
rtpstart=10000
rtpend=20000
Salviamo il file e rinizializziamo Asterisk
/etc/init.d/asterisk restart
E' tutto
Commenti recenti
4 settimane 5 giorni fa
10 settimane 1 giorno fa
14 settimane 21 ore fa
14 settimane 6 giorni fa
15 settimane 4 giorni fa
15 settimane 5 giorni fa
15 settimane 5 giorni fa
15 settimane 6 giorni fa
16 settimane 1 giorno fa
16 settimane 1 giorno fa