PDA

Voir la version complète : Protection des postes nomades Asterisk: un exemple avec un la configuration de pptpd



fastm3
17/09/2010, 00h13
Bon , il est souvent demandé comment protéger Asterisk pour les postes nomades ou connections "dynamiques".

La solution , c'est un vpn et c'est assez simple même si je ne rentrerai pas dans les details. L'idée est de montrer que cela peut être fait facilement en 10min chrono.
Pour des commerciaux distants équipés de softphone sous windows. pptp est un des plus faciles à déployer car il le client sous Windows est intégré.

On va prendre l'exemple d'un petit serveur asterisk ( tournant sous debian ) derriere un routeur. Le serveur asterisk a pour adresse derriere le routeur 192.168.10.200.
L'ip externe est 82.X.Y.Z

On va supposer qu'il est protégé déja par un script iptables tel que décrit sur http://www.asterisk-france.org/showthread.php/8-Bloquer-les-scans.
Donc a part les ips explicitement autorisees sur le port 5060, personne ne peut accéder à asterisk à partir d'internet, ce qui est voulu.
On va autoriser les postes nomades a le faire néanmoins s'ils se connectent au serveur asterisk par vpn.

Etape 1: Installation et configuration du serveur pptpd sur la machine debian asterisk.

aptitude install pptpdConfiguration pptpd:
dans /etc/pptpd.conf, on ajoute juste les lignes suivantes ( les commerciaux se connectant récupèreront une adresse comprise entre 192.168.12.2 et 192.168.12.23

localip 192.168.12.1
remoteip 192.168.12.2-23on definit les users dans /etc/ppp/chap-secrets

# Secrets for authentication using CHAP
# client server secret IP addresses
fastm3 pptpd mypass *Ca y est le serveur vpn est installé...


Etape 2: Modification du firewall pour permettre aux commerciaux d'acceder a asterisk

dans le script /etc/init.d/firewall, on ajoutera la ligne suivante au debut.

# on autorise tout ce qui vient du subnet pour simplifier
iptables -A INPUT -s 192.168.12.0/24 -j ACCEPT
# on ouvre le port 1723
$IPT -A INPUT -p tcp --dport 1723 -j ACCEPT
# on autorise gre
$IPT -A INPUT -p gre -j ACCEPTSur votre routeur
On forwardera le port 1723 sur l'adresse interne de notre serveur asterisk 192.168.10.200

Etape 3: Config asterisk

Dans sip.conf, vou deviez avoir quelque chose comme cela

nat=yes
externip=82.X.Y.Z
localnet=192.168.10.0/255.255.255.0On rajoute une ligne pour le vpn.

nat=yes
externip=82.X.Y.Z
localnet=192.168.10.0/255.255.255.0
localnet=192.168.12.0/255.255.255.0
Pour les extensions remotes, on les limitera a un acces direct du vpn.

[monextensionremote]
deny=0.0.0.0/0.0.0.0
permit=192.168.12.1/255.255.255.0Etape 4: On redemarre tout pour prendre en compte la config

/etc/init.d/pptpd restart
/etc/init.d/firewall restart
reload asterisk le cas echeant.


Etape 5: Creation sur un poste windows de la connection vpn.

( A ne realiser qu'une seule fois, il faudra verifier qu'elle est active ensuite )


Ici, on le réalise sous windows 7.

Création d'une nouvelle connexion.

21

Connexion espace de travail (vpn)

18

Choix du nom de la connexion et on specifie l'ip externe du serveur vpn.

20

19

Saisie user et mot de passe spécifié dans /etc/ppp/chap-secrets

17

Connecter et hop, la connexion vpn devrait être active. On va néanmoins modifier un peu sa config.

Dans les parametres avancee tcpip v4 de la connection vpn, on decochera la case: Utiliser la passerelle par defaut pour le reseau distant.
Cela signifie que l'acces au net continue a se faire par la connection reseau du commercial. Le vpn ne sera utilisé que pour accéder au serveur asterisk.
Se deconnecter et reconnecter pour rendre le reglages actif. Sans ce changement, vous n'auriez plus de connectivité vers internet, le routage n'etant pas configuré du coté du serveur.

16


A cette étape, on peut pinger 192.168.12.1 ( notre serveur asterisk ) du pc windows.

On retourne sur le serveur asterisk et on peut verifier la connection avec ifconfig.

ifconfig sur le serveur doit montrer la connection ppp


debian:/var/log# ifconfig
ppp0 Link encap:Point-to-Point Protocol
inet addr:192.168.12.1 P-t-P:192.168.12.2 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1396 Metric:1
RX packets:363 errors:0 dropped:0 overruns:0 frame:0
TX packets:23 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:3
RX bytes:31520 (30.7 KiB) TX bytes:8623 (8.4 KiB)

Etape 5bis: Creation sur l'iphone de la connection vpn

On choisira simplement le type pptp dans la definition du vpn en precisant l'ip externe du serveur vpn soit 82.X.Y.Z dans l'exemple ici ou le nom du host si vous avez enregistré celui-ci dans un dns.

35

Etape 6: Configuration du softphone windows ou iphone.

L'adresse du serveur asterisk sera 192.168.12.1, le reste de la procédure est identique.
Pour le commercial, il a juste a connecter en 1 clic la connexion "VPN Asterisk" avant l'utilisation du softphone. Certains softphones peuvent lancer en même temps la connexion vpn.

Et voila, grâce a l'article précèdent, vous êtes a l'abri des scans. Et grâce a celui-ci, vous pouvez connecter des postes nomades.

Bien sur, il existe d'autres vpn ( OpenVpn ) , des routeurs évolués, mais cette méthode a le mérite d'être très simple et sans matériel réseau spécifique.
Fastm3.

hb22
17/09/2010, 03h31
Comme la téléphonie IP est très pratique, j'ai des clients qui permettent à leur personnel de travailler chez eux. Ils sont visibles dans l'installation téléphonique comme s'ils travaillent en interne (supervision, interception, appels sortants au frais de l'entreprise, etc...). Mais à la place du softphone sur leur ordinateur portable, ils nous ont fait installer un téléphone physique Siemens Gigaset C470 IP directement sur la Box (d'après le client plus pratique qu'un SoftPhone). Dans ce cas le VPN devient difficilement installable. D'ou cette discussion sur le changement de port d'écoute d'Asterisk : http://www.asterisk-france.org/showthread.php/37-Cons%C3%A9quence-si-on-change-le-port-d-%C3%A9coute-d-Asterisk

fastm3
17/09/2010, 09h11
Le changement de port est pas mal mais la limitation par ip fixe est meilleure, tout comme le vpn ( on peut laisser le changement de port, seuls les paranoïaques survivent... ) . Mais pour ces solutions complémentaires dans ce cas, il est vrai qu'il faut mettre a la main a la poche.

- Avoir une ipfixe ce qui est possible à mettre en place pour du teletravail domicile. Quoiqu'il n'y a pas de surcout chez free.
- Un petit routeur grand public à 50€ pour le vpn, pptp ou openvpn dont la mise en place coté serveur est à peine un peu plus compliqué.
- Offrir un iphone par exemple à la place du siemens qui permettra de monter la connection vpn...( Je viens de faire avec succès quelques tests avec un ios 4.02 en wifi )

Fastm3.