Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse

NodeBB

  1. Home
  2. Informatique
  3. Système d'exploitation : Ordinateur
  4. Linux
  5. Mise en place d'un port-knocking

Mise en place d'un port-knocking

Scheduled Pinned Locked Moved Linux
2 Posts 2 Posters 6.5k Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • SoulalexS
    SoulalexS
    Soulalex
    wrote on last edited by
    #1

    <p style="text-align:center;"><span style="font-size:24px;"><span style='font-family: "lucida sans unicode","lucida grande",sans-serif;'><strong>Mise en place d'un « port-knocking<span style='font-family: "lucida sans unicode","lucida grande",sans-serif;'> »</span></strong></span></span></p><p style="text-align:center;"> </p><p style="text-align:center;"> </p><p style="margin-left:40px;"><span style="font-family:'lucida sans unicode', 'lucida grande', sans-serif;"><span style="font-size:18px;"><strong>1. La notion de « port-knocking »</strong></span></span></p><p> </p><p><span style="font-family:'lucida sans unicode', 'lucida grande', sans-serif;">Dans un souci de sécurité permanant, <strong>le « port-knocking » vient renforcer votre défense face aux intrusions indésirables</strong>. Son fonctionnement permet d'<strong>ouvrir et de fermer dynamiquement le port souhaité</strong> grâce à  une séquence bien précise de signaux sur des ports définis (ce principe est appelé « toc toc toc ») pour éviter qu'un pirate informatique le repère par un scan des ports de la machine et qu'il puisse en prendre le contrôle total.</span></p><p> </p><p style="text-align:center;"><img alt="PORTK01-550x366.png" src="<base_url>/applications/sslimageproxy/interface/image.php?url=http://www.it-connect.fr/wp-content-itc/uploads/2013/12/PORTK01-550x366.png"/></p><p style="text-align:center;"><em><span style="font-family:'lucida sans unicode', 'lucida grande', sans-serif;">Principe de fonctionnement du « port-knocking ». © IT-Connect.fr</span></em></p><p></p><p style="margin-left:40px;"><span style="font-family:'lucida sans unicode', 'lucida grande', sans-serif;"><strong><span style="font-size:18px;">2. Paramétrage du serveur</span></strong></span></p><p style="margin-left:40px;"> </p><p><span style="font-family:'lucida sans unicode', 'lucida grande', sans-serif;">Le serveur doit disposer d'un firewall bien configurer pour que le service knockd puisse gérer dynamiquement les ports de votre serveur. Ce service est donc en écoute d'une suite de ports associés a un protocole TCP ou UDP.</span></p><p> </p><p><span style="font-family:'lucida sans unicode', 'lucida grande', sans-serif;">Sa configuration est relativement simple et se fait par le fichier <strong>"/etc/knockd.conf"</strong>.</span></p><p> </p><p><span style="font-family:'lucida sans unicode', 'lucida grande', sans-serif;">Deux approches vont être présentées :</span></p><ul><li><div><span style="font-family:'lucida sans unicode', 'lucida grande', sans-serif;">la première est destinée aux connexions qui ne nécessitent pas d'être maintenues (comme HTTP) ;</span></div></li><li><div><span style="font-family:'lucida sans unicode', 'lucida grande', sans-serif;">la seconde méthode à  celles qui doivent l'être (comme SSH et IRC).</span></div></li></ul><div style="margin-left:40px;"> </div><p style="margin-left:40px;"><span style="font-size:18px;"><strong><span style="font-family:'lucida sans unicode', 'lucida grande', sans-serif;">2.1. Connexions non maintenues (no keep-alive)</span></strong></span></p><p style="margin-left:40px;"> </p><p><span style="font-family:'lucida sans unicode', 'lucida grande', sans-serif;">Dans l'exemple ci-dessous, l'utilisateur entrant la séquence de signaux sur les ports 7000, 8000 et 9000 exécutera la commande définie dans "command" permettant ainsi l'ouverture du port 80. Pour que ce port soit refermer, l'utilisateur doit entrer la séquence inverse ou une autre séquence qui sera à  définir dans [closeHTTP].</span></p><pre class="ipsCode prettyprint">[openHTTP]
    sequence = 7000,8000,9000
    seq_timeout = 5
    command = /sbin/iptables -I INPUT -s %IP% -p tcp --dport 80 -j ACCEPT
    tcpflags = syn

    [closeHTTP]
    sequence = 9000,8000,7000
    seq_timeout = 5
    command = /sbin/iptables -D INPUT -s %IP% -p tcp --dport 80 -j ACCEPT
    tcpflags = syn
    </pre><p style="margin-left:40px;"><span style="font-size:18px;"><strong><span style="font-family:'lucida sans unicode', 'lucida grande', sans-serif;">2.2. Connexions maintenues (keep-alive)</span></strong></span></p><p style="margin-left:40px;"> </p><p><span style="font-family:'lucida sans unicode', 'lucida grande', sans-serif;">Dans l'exemple de configuration ci-dessous, l'utilisateur entrant la séquence de signaux sur les ports 7000, 8000 et 9000 a 10 secondes pour se connecter au serveur via SSH, après quoi le port se refermera automatiquement mais ne fermera pas les connexions actives.</span></p><pre class="ipsCode prettyprint">[SSH]
    sequence = 7000,8000,9000
    seq_timeout = 5
    command = /sbin/iptables -I INPUT -s %IP% -p tcp --dport 22 -j ACCEPT
    tcpflags = syn
    cmd_timeout = 10
    stop_command = /sbin/iptables -D INPUT -s %IP% -p tcp --dport 22 -j ACCEPT

    </pre><p style="margin-left:40px;"><span style="font-family:'lucida sans unicode', 'lucida grande', sans-serif;"><span style="font-size:18px;"><strong>3. Accès côté client</strong></span></span></p><p style="margin-left:40px;"> </p><p><span style="font-family:'lucida sans unicode', 'lucida grande', sans-serif;">L'utilisateur doit donc entrer la suite de ports qu'il a défini dans le fichier de configuration du daemon<span style="font-size:14px;"><strong> « </strong></span>knockd <strong>» avec la commande suivante :</strong></span></p><pre class="ipsCode prettyprint">knock <server_adress> <port_1> <port_2> <port_3>
    </pre>

    Soulalex, Administrateur de Melinyel+ E-Mail : [email protected]+ GitHub : https://github.com/Soualex

    1 Reply Last reply
    0
    • OxodaoO
      OxodaoO
      Oxodao
      wrote on last edited by
      #2

      <p>
      --
      </p>

      Tox: [email protected]
      
      1 Reply Last reply
      0

      Hello! It looks like you're interested in this conversation, but you don't have an account yet.

      Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

      With your input, this post could be even better 💗

      Register Login
      Reply
      • Reply as topic
      Log in to reply
      • Oldest to Newest
      • Newest to Oldest
      • Most Votes


      • Login

      • Login or register to search.
      Powered by NodeBB Contributors
      • First post
        Last post
      0
      • Categories
      • Recent
      • Tags
      • Popular
      • World
      • Users
      • Groups