Aller au contenu
  • 0

Sécurité Et Filtrage Ip En Cas D'ip Dynamique


TS219

Question

Bonjour,

je viens de faire l'acquisition d'un nouveau QNAP et souhaite faire de la réplication a distance entre celui ci et un TS219.

Site 1 sur livebox IP dynamique et site 2 ( TS219 ) Freebox IP Fixe

La réplication fonctionne tres bien dans les deux sens ( via un compte no-ip site 1 ) mais je souhaiterais interdire les connexions externes sur mes QNAP.

Dans le sens site 2 vers site 1 , pas de problème j'ai autorisé seulement les connexions de l'IP fixe du site 2 dans le QNAP ( dans l'onglet sécurité )

Par contre dans l'autre sens, site 1 vers site 2, je n'ai pas trouver de solution car l'adresse IP du site 1 change tous le temps !

Y aurais t-il une autre méthode pour que le QNAP site 2 n'autorise seulement les connexions du site 1 ?

Pour l'instant je met a jour manuellement l'IP dans l'onglet sécurité du QNAP

Par avance merci

Lien vers le commentaire
Partager sur d’autres sites

7 réponses à cette question

Messages recommandés

  • 0

Bonjour,

Il n'y a pas de "solution" toute prête ....

Soit votre 112 change d'adresse MAIS dans la même plage (souvent avec Livebox) ... et vous pouvez essayer d'ouvrir la plage et non l'I.P. ...

Soit vous écrivez un "petit" batch (bash) qui tournera en boucle, avec une mise à jour toutes les n sec. / mns ou heure ...

qui utilisera : nslookup nom_du_hôte_dynamique

récupérera l'adresse I.P. (donc celle connu par le Dyndns ... (2 em ligne)

et remplacera l'adresse actuellement (si différente) connu dans le fichier /etc/config/ipsec_allow.conf (ou ipsec_deny.conf) suivant votre besoin ...

exemple de nslookup sur hôte dynamique (bien sur nom et I.P. modifiés ... :icon_lol: ) :


[/etc/config] # nslookup phild.homeip.net

*** Unknown host

Name:	  xxxxx.homeip.net

Address:	99.50.9.99

[/etc/config] #

et relancer le service :

/sbin/ip_filter ; /etc/init.d/qsyncman.sh restart

Philippe.

NB Pas 100% sur ... a tester ...

Lien vers le commentaire
Partager sur d’autres sites

  • 0

Bonjour Philippe,

Merci pour ta réponse , je pense pouvoir utiliser cette commande, mais n'ayant que quelques notions de script sous ubuntu peux tu m'en dire un peu plus sur la façon d'ecrire dans le fichier conf.

j'ai testé cela dans ubuntu ( je suppose que cela fonctionnera aussi dans le QNAP ) :

#!/bin/bash

IP=$(nslookup xxx.no-ip.org | grep -i address | cut -f 3 | cut -d':' -f2)

echo $IP

read

La variable IP me donne bien l'adresse de mon site 1

Je voudrais maintenant simplement effacer la totalité du fichier Ipsec.conf ( sur mon QNAP les fichiers ipsec_allow et ipsec_deny ne sont pas utilisés ) puis d'y écrire toutes les adresses IP que je souhaite autoriser puis d'y ajouter ma variable $IP

Faut-il utiliser une commande particulière avec les droits administrateur pour écrire dans ce fichier ?

Une fois que j'aurais terminé mon script , pour le lancer une fois / h qu'elle est la commande a utiliser ? crontab ?

Lien vers le commentaire
Partager sur d’autres sites

  • 0

Bonjour,

Je ne connais pas bien l'usage des filtres avec Qnap ... je préfère gérer cela sur mon routeur ... donc ...

Il faut en effet regarder chaque possibilité ... et voir quel fichier est modifié ...

Pour ipsec.conf ... cela semble être pour "seulement si l'adresse matche" ipsec_deny.conf pour "autorisé sauf si l'adresse ou le réseau matche" .... etc.

Je fais mes "pauvres" petits shell sur une Debian, avant de les mettre sur Qnap ... donc cela fonctionnera ... il faut juste faire attention aux versions restreintes des utilitaires et si besoin mettre celle des Ipkg (Optware) ex. find ou sed ...

Si vous avez plusieurs listes à créer ... créez un nouveau fichier et quand c'est prêt ... vous copier le nouveau ...

... avantage, vous gardez une copie, vous pouvez tester hors le Qnap ...

Sur QNAP vous ne pouvez (en standard) QUE être admin (soit le root) ... donc pas de soucis pour y écrire, pensez à garder les même droits ...

ip_filter est indispensable ...

qsyncman.sh lui sert à montrer à l'interface Web ce qui a été introduit ... donc c'est optionnel ... mais n'allez pas jouer avec le menu ...

Pour Info en cas de sécurité haute (filtre des I.P. autorisés) ... QNAP relance carrément le réseau (/etc/init.d/network.sh restart) ... je ne sais pas si c'est vraiment nécessaire ou pas ...

La bonne place pour ce type de shell est dans l'autorun.sh ... juste après que toutes les taches de base soient lancées ... (avant les QPKG)

utilisez dans le shell daemon_mgr ... car si votre shell se plante, vous aurez un message "relaunch" dans le log ... et le shell sera relancé ...

normalement, vous ne devriez jamais sortir de la boucle ... mais au cas ou ... vous pourrez aussi le lancer en background et ou en nohup ...

ou alors OUI si c'est "rare" une fois par heure ... un crontab sera très bien ... (avec un log ... bien sur) vous n'avez qu'a vérifier que le fichier /etc/config/crontab ... est bien mis à jour, pour ne pas risquer de perdre au prochain boot votre programmation ... car le Qnap "bricole" un peu avec les fichiers ... relancez crond (/etc/init.d/crond.sh restart) pour une prise en compte ...

Philippe.

Lien vers le commentaire
Partager sur d’autres sites

  • 0

merci pour ces précisions

J'ai testé la commande nslookup depuis le Qnap avec putty mais elle ne fonctionne pas

la réponse est toujours : applet not found

Il semblerait que la fonction nslookup depend de la version de busybox

J'ai donc installé ipkg et installé busybox par la commande ipkg install busybox, mais la reponse est identique : applet not found

Une petite idée pour faire fonctionner cette fonction sur le QNAP ?

Lien vers le commentaire
Partager sur d’autres sites

  • 0

Bonjour,

Hum!!! j'ai essayé (la trace donnée) ... c'est le nslookup lié a busybox ... je suis en firmware 3.6 ....

avez-vous bien entré : /opt/bin/nslookup (ou sbin ... je ne sais plus ... )

Philippe.

NB applet ... est une réponse car l'appel se fait sur busybox ... qui connait le nom (nslookup) mais dont l'applet n'est pas intégré au binaire busybox fourni ...

Lien vers le commentaire
Partager sur d’autres sites

  • 0

Je suis en version 3.3.2 ( c'est la plus récente que j'ai trouvé pour mon QNAP )

Lorsque je tape /opt/bin ( ou sbin ) /nslookup xxx.no-ip.org

il me dit : no such file or directory

Je suis allé voir dans les répertoires opt/bin et opt/sbin et effectivement aucune trace de nslookup

La version de base de busybox de mon QNAP est la v1.01 ( qui apparemment n'inclue pas nslookup )

La version busybox de ipkg ( qui se trouve dans /opt/bin/ est une version plus recente ( v1.10 ) avec plus de fonction mais le nslookup ne fait toujours pas partie de la liste.

Peut - on rajouter la commande nslookup manuellement ?

Lien vers le commentaire
Partager sur d’autres sites

  • 0

Bonjour Philippe,

J'ai trouvé une nouvelle version de busybox ici :

http://www.busybox.n...inaries/1.16.0/

celle-ci accepte la fonction nslookup

Pour l'installer :

copier le fichier busybox-armv61 sur le QNAP ( par ex: /share/HDA_DATA )

pour le tester depuis une connexion SSH taper la commande suivante /share/HDA_DATA/busybox-arm61 nslookup xxx.no-ip.org

Voici mon script complet, cela fonctionne très bien :

-l'adresse IP est stocké dans un fichier txt

-je modifie directement le fichier ipsec.conf

-le script est lancé par crontab finalement toutes les 10 minutes

-la commande /etc/init.d/qsyncman.sh restart ne fonctionne pas sur mon QNAP mais l'interface web est quand même mis a jour

#!/bin/sh

#Indiquer le chemin du fichier ou sera stocké l'IP

FileIpOld=/share/HDA_DATA/IpOld.txt

#indiquer le chemin du fichier ipsec.conf

FileIpsec=/mnt/HDA_ROOT/.config/ipsec.conf

if [ ! -e $FileIpOld ];then

echo "Fichier IpOld.txt introuvable"

echo "Création du fichier IpOld.txt"

echo 1.1.1.1 > $FileIpOld

fi

IpOld=$(cat $FileIpOld)

IpAct=$(/share/HDA_DATA/busybox-armv61 nslookup xxxx.no-ip.org | grep -i address | cut -d' ' -f3 | sed '1d' )

if [ $IpAct != $IpOld ];then

echo "l'ancienne adresse IP est" $IpOld

echo "la nouvelle adresse IP est" $IpAct

echo $IpAct > $FileIpOld

echo "Modification du fichier Ipsec.conf"

#Rajouter ici les IP supplementaires :

#ex:

echo "1:192.168.0.1:255.255.255.0:0:0" >> $FileIpsec

echo "1:192.168.1.1:255.255.255.0:0:0" >> $FileIpsec

echo "0:"$IpAct"::0:0" >> $FileIpsec

else

echo "L'adresse est identique:" $IpAct

fi

/sbin/ip_filter

exit 0

Merci pour ton aide

Lien vers le commentaire
Partager sur d’autres sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Invité
Répondre à cette question…

×   Vous avez collé du contenu avec mise en forme.   Supprimer la mise en forme

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

Chargement
×
×
  • Créer...