<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="fr">
	<id>http://wiki.pedrono.fr/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Jules</id>
	<title>PedroWiki - Contributions [fr]</title>
	<link rel="self" type="application/atom+xml" href="http://wiki.pedrono.fr/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Jules"/>
	<link rel="alternate" type="text/html" href="http://wiki.pedrono.fr/index.php/Sp%C3%A9cial:Contributions/Jules"/>
	<updated>2026-05-13T08:40:29Z</updated>
	<subtitle>Contributions</subtitle>
	<generator>MediaWiki 1.42.1</generator>
	<entry>
		<id>http://wiki.pedrono.fr/index.php?title=SSH_-_Configuration_du_Port_Knocking&amp;diff=953</id>
		<title>SSH - Configuration du Port Knocking</title>
		<link rel="alternate" type="text/html" href="http://wiki.pedrono.fr/index.php?title=SSH_-_Configuration_du_Port_Knocking&amp;diff=953"/>
		<updated>2025-12-23T13:59:47Z</updated>

		<summary type="html">&lt;p&gt;Jules : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Introduction =&lt;br /&gt;
&lt;br /&gt;
La technique de Port Knocking consiste à autoriser des connexions SSH (mais pas que) en fonction de l&#039;accès à une suite de ports depuis le client.&lt;br /&gt;
&lt;br /&gt;
De cette façon, &lt;br /&gt;
* il n&#039;est pas nécessaire d&#039;avoir une règle autorisant une IP ou une liste d&#039;IP à se connecter en SSH.&lt;br /&gt;
* il suffit simplement de connaître la séquence de port à prober pour ouvrir le flux temporairement et pouvoir se connecter.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;NB&#039;&#039;&#039;: il peut être contraignant de restreindre l&#039;accès au port SSH par iptables pour plusieurs raisons&lt;br /&gt;
* certaines IPs de box notamment sont susceptibles de changer dans le temps.&lt;br /&gt;
* on n&#039;est pas toujours derrière ces IPs au moment où on a besoin de se connecter.&lt;br /&gt;
&lt;br /&gt;
= Pré requis =&lt;br /&gt;
&lt;br /&gt;
Le système à protéger doit disposer du package &amp;lt;code&amp;gt;iptables&amp;lt;/code&amp;gt; et d&#039;une configuration de parefeu restrictive sur le port SSH.&lt;br /&gt;
&lt;br /&gt;
A toutes fins utiles, cf [https://lea-linux.org/documentations/iptables ce très bon guide iptables de Léa Linux].&lt;br /&gt;
&lt;br /&gt;
= Packages à installer =&lt;br /&gt;
&lt;br /&gt;
Qu&#039;on souhaite utiliser le service &amp;lt;code&amp;gt;knockd&amp;lt;/code&amp;gt; ou le client &amp;lt;code&amp;gt;knock&amp;lt;/code&amp;gt;, le package à installer est le même:&lt;br /&gt;
&lt;br /&gt;
 apt install knockd&lt;br /&gt;
&lt;br /&gt;
= Configuration côté serveur =&lt;br /&gt;
&lt;br /&gt;
Configuration dans &amp;lt;code&amp;gt;/etc/knockd.conf&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[options]&lt;br /&gt;
        logfile     = /var/log/knockd.log&lt;br /&gt;
&lt;br /&gt;
[openSSH]&lt;br /&gt;
        sequence    = 2001,2004,2007&lt;br /&gt;
        seq_timeout = 5&lt;br /&gt;
        command     = /sbin/iptables -A INPUT -s %IP% -p tcp --dport 22 -j ACCEPT&lt;br /&gt;
        cmd_timeout = 10&lt;br /&gt;
        stop_command = /sbin/iptables -D INPUT -s %IP% -p tcp --dport 22 -j ACCEPT&lt;br /&gt;
        tcpflags    = syn&lt;br /&gt;
&lt;br /&gt;
[closeSSH]&lt;br /&gt;
        sequence    = 2007,2004,2001&lt;br /&gt;
        seq_timeout = 5&lt;br /&gt;
        command     = /sbin/iptables -D INPUT -s %IP% -p tcp --dport 22 -j ACCEPT&lt;br /&gt;
        tcpflags    = syn&lt;br /&gt;
&lt;br /&gt;
[openHTTPS]&lt;br /&gt;
        sequence    = 12345,54321,24680,13579&lt;br /&gt;
        seq_timeout = 5&lt;br /&gt;
        command     = /usr/local/sbin/knock_add -i -c INPUT -p tcp -d 443 -f %IP%&lt;br /&gt;
        tcpflags    = syn&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Détails sur l&#039;utilité des options:&lt;br /&gt;
* &#039;&#039;&#039;logfile&#039;&#039;&#039;: par défaut, le service log dans le log système global, il est parfois plus pratique d&#039;avoir un log dédié pour éviter les pollutions pendant un diag de fonctionnement.&lt;br /&gt;
* &#039;&#039;&#039;seq_timeout&#039;&#039;&#039;: la durée pendant laquelle le service attends la séquence de ports.&lt;br /&gt;
* &#039;&#039;&#039;command&#039;&#039;&#039;: en général, une commande &amp;lt;code&amp;gt;iptables&amp;lt;/code&amp;gt; permettant d&#039;ajouter dynamiquement une règle de parefeu.&lt;br /&gt;
* &#039;&#039;&#039;cmd_timeout&#039;&#039;&#039;: durée au delà de laquelle on exécute **stop_command**.&lt;br /&gt;
* &#039;&#039;&#039;stop_command&#039;&#039;&#039;: dans notre cas, commande iptables retirant l&#039;autorisation temporaire d&#039;accès. **NB**: cela évite d&#039;oublier de jouer la séquence de ports pour refermer le parefeu et donc de laisser un port inutilement ouvert.&lt;br /&gt;
* &#039;&#039;&#039;tcpflags&#039;&#039;&#039;: les types de trames TCP attendues pour le jeu de la séquence.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;NB&#039;&#039;&#039;: on voit dans le bloc &amp;lt;code&amp;gt;openHTTPS&amp;lt;/code&amp;gt; que le service peut être utilisé à d&#039;autres fins que simplement donner un accès SSH.&lt;br /&gt;
&lt;br /&gt;
Configuration dans &amp;lt;code&amp;gt;/etc/default/knockd&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# control if we start knockd at init or not&lt;br /&gt;
# 1 = start&lt;br /&gt;
# anything else = don&#039;t start&lt;br /&gt;
# PLEASE EDIT /etc/knockd.conf BEFORE ENABLING&lt;br /&gt;
START_KNOCKD=1&lt;br /&gt;
&lt;br /&gt;
# command line options&lt;br /&gt;
KNOCKD_OPTS=&amp;quot;-i enp0s3&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;START_KNOCKD&#039;&#039;&#039; à 1 permet d&#039;activer le service au démarrage du serveur.&lt;br /&gt;
* &#039;&#039;&#039;KNOCKD_OPTS&#039;&#039;&#039; permet d&#039;ajouter des options à l&#039;appel du lancement du service.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;NB&#039;&#039;&#039;: l&#039;option &amp;lt;code&amp;gt;-i&amp;lt;/code&amp;gt; est très importante, car sans configurer une interface d&#039;écoute, le service ne démarrera tout simplement pas.&lt;br /&gt;
&lt;br /&gt;
= Configuration côté client =&lt;br /&gt;
&lt;br /&gt;
Pour jouer la séquence d&#039;accès aux ports servant de combinaison d&#039;accès (ou d&#039;annulation de l&#039;accès), utiliser le client &amp;lt;code&amp;gt;knock&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
knock &amp;lt;ip_destination&amp;gt; -v &amp;lt;port1&amp;gt; &amp;lt;port2&amp;gt; &amp;lt;port3&amp;gt;...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Options:&lt;br /&gt;
* &amp;lt;code&amp;gt;-v&amp;lt;/code&amp;gt;: mode verbeux, pour voir en temps réel le travail du client knock.&lt;br /&gt;
* &amp;lt;code&amp;gt;-d&amp;lt;/code&amp;gt;: délai entre chaque accès aux ports de la liste.&lt;br /&gt;
&lt;br /&gt;
Dans le cas où l&#039;on utilise un fichier de configuration SSH (ex: &amp;lt;code&amp;gt;~/.ssh/config&amp;lt;/code&amp;gt;), on peut configurer l&#039;accès comme suit:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Host maquetteknock&lt;br /&gt;
        Hostname 10.0.2.9&lt;br /&gt;
        Port 22&lt;br /&gt;
        User julien&lt;br /&gt;
        IdentityFile ~/.ssh/id_ecdsa&lt;br /&gt;
&lt;br /&gt;
Match host 10.0.2.9 exec &amp;quot;knock -d 500 %h 2001 2004 2007&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le bloc &amp;lt;code&amp;gt;Host&amp;lt;/code&amp;gt; est assez classique:&lt;br /&gt;
* définition du hostname / de l&#039;IP à joindre.&lt;br /&gt;
* port à contacter pour se connecter en SSH.&lt;br /&gt;
* l&#039;utilisateur de connexion.&lt;br /&gt;
* le fichier de clé privé servant à l&#039;authentification.&lt;br /&gt;
&lt;br /&gt;
La configuration &amp;lt;code&amp;gt;Match host/exec&amp;lt;/code&amp;gt; sert, dans notre cas, à exécuter une commande en préalable de l&#039;établissement de la session: ici la commande &amp;lt;code&amp;gt;knock&amp;lt;/code&amp;gt; permettant d&#039;ouvrir les flux.&lt;br /&gt;
&lt;br /&gt;
[[Category:Howto]]&lt;br /&gt;
[[Category:Systeme]]&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:Sécurité]]&lt;/div&gt;</summary>
		<author><name>Jules</name></author>
	</entry>
	<entry>
		<id>http://wiki.pedrono.fr/index.php?title=SSH_-_Configuration_du_Port_Knocking&amp;diff=952</id>
		<title>SSH - Configuration du Port Knocking</title>
		<link rel="alternate" type="text/html" href="http://wiki.pedrono.fr/index.php?title=SSH_-_Configuration_du_Port_Knocking&amp;diff=952"/>
		<updated>2025-12-23T13:48:27Z</updated>

		<summary type="html">&lt;p&gt;Jules : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Introduction =&lt;br /&gt;
&lt;br /&gt;
La technique de Port Knocking consiste à autoriser des connexions SSH (mais pas que) en fonction de l&#039;accès à une suite de ports depuis le client.&lt;br /&gt;
&lt;br /&gt;
De cette façon, &lt;br /&gt;
* il n&#039;est pas nécessaire d&#039;avoir une règle autorisant une IP ou une liste d&#039;IP à se connecter en SSH.&lt;br /&gt;
* il suffit simplement de connaître la séquence de port à prober pour ouvrir le flux temporairement et pouvoir se connecter.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;NB&#039;&#039;&#039;: il peut être contraignant de restreindre l&#039;accès au port SSH par iptables pour plusieurs raisons&lt;br /&gt;
* certaines IPs de box notamment sont susceptibles de changer dans le temps.&lt;br /&gt;
* on n&#039;est pas toujours derrière ces IPs au moment où on a besoin de se connecter.&lt;br /&gt;
&lt;br /&gt;
= Packages à installer =&lt;br /&gt;
&lt;br /&gt;
Qu&#039;on souhaite utiliser le service &amp;lt;code&amp;gt;knockd&amp;lt;/code&amp;gt; ou le client &amp;lt;code&amp;gt;knock&amp;lt;/code&amp;gt;, le package à installer est le même:&lt;br /&gt;
&lt;br /&gt;
 apt install knockd&lt;br /&gt;
&lt;br /&gt;
= Configuration côté serveur =&lt;br /&gt;
&lt;br /&gt;
Configuration dans &amp;lt;code&amp;gt;/etc/knockd.conf&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[options]&lt;br /&gt;
        logfile     = /var/log/knockd.log&lt;br /&gt;
&lt;br /&gt;
[openSSH]&lt;br /&gt;
        sequence    = 2001,2004,2007&lt;br /&gt;
        seq_timeout = 5&lt;br /&gt;
        command     = /sbin/iptables -A INPUT -s %IP% -p tcp --dport 22 -j ACCEPT&lt;br /&gt;
        cmd_timeout = 10&lt;br /&gt;
        stop_command = /sbin/iptables -D INPUT -s %IP% -p tcp --dport 22 -j ACCEPT&lt;br /&gt;
        tcpflags    = syn&lt;br /&gt;
&lt;br /&gt;
[closeSSH]&lt;br /&gt;
        sequence    = 2007,2004,2001&lt;br /&gt;
        seq_timeout = 5&lt;br /&gt;
        command     = /sbin/iptables -D INPUT -s %IP% -p tcp --dport 22 -j ACCEPT&lt;br /&gt;
        tcpflags    = syn&lt;br /&gt;
&lt;br /&gt;
[openHTTPS]&lt;br /&gt;
        sequence    = 12345,54321,24680,13579&lt;br /&gt;
        seq_timeout = 5&lt;br /&gt;
        command     = /usr/local/sbin/knock_add -i -c INPUT -p tcp -d 443 -f %IP%&lt;br /&gt;
        tcpflags    = syn&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Détails sur l&#039;utilité des options:&lt;br /&gt;
* &#039;&#039;&#039;logfile&#039;&#039;&#039;: par défaut, le service log dans le log système global, il est parfois plus pratique d&#039;avoir un log dédié pour éviter les pollutions pendant un diag de fonctionnement.&lt;br /&gt;
* &#039;&#039;&#039;seq_timeout&#039;&#039;&#039;: la durée pendant laquelle le service attends la séquence de ports.&lt;br /&gt;
* &#039;&#039;&#039;command&#039;&#039;&#039;: en général, une commande &amp;lt;code&amp;gt;iptables&amp;lt;/code&amp;gt; permettant d&#039;ajouter dynamiquement une règle de parefeu.&lt;br /&gt;
* &#039;&#039;&#039;cmd_timeout&#039;&#039;&#039;: durée au delà de laquelle on exécute **stop_command**.&lt;br /&gt;
* &#039;&#039;&#039;stop_command&#039;&#039;&#039;: dans notre cas, commande iptables retirant l&#039;autorisation temporaire d&#039;accès. **NB**: cela évite d&#039;oublier de jouer la séquence de ports pour refermer le parefeu et donc de laisser un port inutilement ouvert.&lt;br /&gt;
* &#039;&#039;&#039;tcpflags&#039;&#039;&#039;: les types de trames TCP attendues pour le jeu de la séquence.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;NB&#039;&#039;&#039;: on voit dans le bloc &amp;lt;code&amp;gt;openHTTPS&amp;lt;/code&amp;gt; que le service peut être utilisé à d&#039;autres fins que simplement donner un accès SSH.&lt;br /&gt;
&lt;br /&gt;
Configuration dans &amp;lt;code&amp;gt;/etc/default/knockd&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# control if we start knockd at init or not&lt;br /&gt;
# 1 = start&lt;br /&gt;
# anything else = don&#039;t start&lt;br /&gt;
# PLEASE EDIT /etc/knockd.conf BEFORE ENABLING&lt;br /&gt;
START_KNOCKD=1&lt;br /&gt;
&lt;br /&gt;
# command line options&lt;br /&gt;
KNOCKD_OPTS=&amp;quot;-i enp0s3&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;START_KNOCKD&#039;&#039;&#039; à 1 permet d&#039;activer le service au démarrage du serveur.&lt;br /&gt;
* &#039;&#039;&#039;KNOCKD_OPTS&#039;&#039;&#039; permet d&#039;ajouter des options à l&#039;appel du lancement du service.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;NB&#039;&#039;&#039;: l&#039;option &amp;lt;code&amp;gt;-i&amp;lt;/code&amp;gt; est très importante, car sans configurer une interface d&#039;écoute, le service ne démarrera tout simplement pas.&lt;br /&gt;
&lt;br /&gt;
= Configuration côté client =&lt;br /&gt;
&lt;br /&gt;
Pour jouer la séquence d&#039;accès aux ports servant de combinaison d&#039;accès (ou d&#039;annulation de l&#039;accès), utiliser le client &amp;lt;code&amp;gt;knock&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
knock &amp;lt;ip_destination&amp;gt; -v &amp;lt;port1&amp;gt; &amp;lt;port2&amp;gt; &amp;lt;port3&amp;gt;...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Options:&lt;br /&gt;
* &amp;lt;code&amp;gt;-v&amp;lt;/code&amp;gt;: mode verbeux, pour voir en temps réel le travail du client knock.&lt;br /&gt;
* &amp;lt;code&amp;gt;-d&amp;lt;/code&amp;gt;: délai entre chaque accès aux ports de la liste.&lt;br /&gt;
&lt;br /&gt;
Dans le cas où l&#039;on utilise un fichier de configuration SSH (ex: &amp;lt;code&amp;gt;~/.ssh/config&amp;lt;/code&amp;gt;), on peut configurer l&#039;accès comme suit:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Host maquetteknock&lt;br /&gt;
        Hostname 10.0.2.9&lt;br /&gt;
        Port 22&lt;br /&gt;
        User julien&lt;br /&gt;
        IdentityFile ~/.ssh/id_ecdsa&lt;br /&gt;
&lt;br /&gt;
Match host 10.0.2.9 exec &amp;quot;knock -d 500 %h 2001 2004 2007&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le bloc &amp;lt;code&amp;gt;Host&amp;lt;/code&amp;gt; est assez classique:&lt;br /&gt;
* définition du hostname / de l&#039;IP à joindre.&lt;br /&gt;
* port à contacter pour se connecter en SSH.&lt;br /&gt;
* l&#039;utilisateur de connexion.&lt;br /&gt;
* le fichier de clé privé servant à l&#039;authentification.&lt;br /&gt;
&lt;br /&gt;
La configuration &amp;lt;code&amp;gt;Match host/exec&amp;lt;/code&amp;gt; sert, dans notre cas, à exécuter une commande en préalable de l&#039;établissement de la session: ici la commande &amp;lt;code&amp;gt;knock&amp;lt;/code&amp;gt; permettant d&#039;ouvrir les flux.&lt;br /&gt;
&lt;br /&gt;
[[Category:Howto]]&lt;br /&gt;
[[Category:Systeme]]&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:Sécurité]]&lt;/div&gt;</summary>
		<author><name>Jules</name></author>
	</entry>
	<entry>
		<id>http://wiki.pedrono.fr/index.php?title=SSH_-_Configuration_du_Port_Knocking&amp;diff=951</id>
		<title>SSH - Configuration du Port Knocking</title>
		<link rel="alternate" type="text/html" href="http://wiki.pedrono.fr/index.php?title=SSH_-_Configuration_du_Port_Knocking&amp;diff=951"/>
		<updated>2025-12-23T13:48:08Z</updated>

		<summary type="html">&lt;p&gt;Jules : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Introduction =&lt;br /&gt;
&lt;br /&gt;
La technique de Port Knocking consiste à autoriser des connexions SSH (mais pas que) en fonction de l&#039;accès à une suite de port depuis le client.&lt;br /&gt;
&lt;br /&gt;
De cette façon, &lt;br /&gt;
* il n&#039;est pas nécessaire d&#039;avoir une règle autorisant une IP ou une liste d&#039;IP à se connecter en SSH.&lt;br /&gt;
* il suffit simplement de connaître la séquence de port à prober pour ouvrir le flux temporairement et pouvoir se connecter.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;NB&#039;&#039;&#039;: il peut être contraignant de restreindre l&#039;accès au port SSH par iptables pour plusieurs raisons&lt;br /&gt;
* certaines IPs de box notamment sont susceptibles de changer dans le temps.&lt;br /&gt;
* on n&#039;est pas toujours derrière ces IPs au moment où on a besoin de se connecter.&lt;br /&gt;
&lt;br /&gt;
= Packages à installer =&lt;br /&gt;
&lt;br /&gt;
Qu&#039;on souhaite utiliser le service &amp;lt;code&amp;gt;knockd&amp;lt;/code&amp;gt; ou le client &amp;lt;code&amp;gt;knock&amp;lt;/code&amp;gt;, le package à installer est le même:&lt;br /&gt;
&lt;br /&gt;
 apt install knockd&lt;br /&gt;
&lt;br /&gt;
= Configuration côté serveur =&lt;br /&gt;
&lt;br /&gt;
Configuration dans &amp;lt;code&amp;gt;/etc/knockd.conf&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[options]&lt;br /&gt;
        logfile     = /var/log/knockd.log&lt;br /&gt;
&lt;br /&gt;
[openSSH]&lt;br /&gt;
        sequence    = 2001,2004,2007&lt;br /&gt;
        seq_timeout = 5&lt;br /&gt;
        command     = /sbin/iptables -A INPUT -s %IP% -p tcp --dport 22 -j ACCEPT&lt;br /&gt;
        cmd_timeout = 10&lt;br /&gt;
        stop_command = /sbin/iptables -D INPUT -s %IP% -p tcp --dport 22 -j ACCEPT&lt;br /&gt;
        tcpflags    = syn&lt;br /&gt;
&lt;br /&gt;
[closeSSH]&lt;br /&gt;
        sequence    = 2007,2004,2001&lt;br /&gt;
        seq_timeout = 5&lt;br /&gt;
        command     = /sbin/iptables -D INPUT -s %IP% -p tcp --dport 22 -j ACCEPT&lt;br /&gt;
        tcpflags    = syn&lt;br /&gt;
&lt;br /&gt;
[openHTTPS]&lt;br /&gt;
        sequence    = 12345,54321,24680,13579&lt;br /&gt;
        seq_timeout = 5&lt;br /&gt;
        command     = /usr/local/sbin/knock_add -i -c INPUT -p tcp -d 443 -f %IP%&lt;br /&gt;
        tcpflags    = syn&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Détails sur l&#039;utilité des options:&lt;br /&gt;
* &#039;&#039;&#039;logfile&#039;&#039;&#039;: par défaut, le service log dans le log système global, il est parfois plus pratique d&#039;avoir un log dédié pour éviter les pollutions pendant un diag de fonctionnement.&lt;br /&gt;
* &#039;&#039;&#039;seq_timeout&#039;&#039;&#039;: la durée pendant laquelle le service attends la séquence de ports.&lt;br /&gt;
* &#039;&#039;&#039;command&#039;&#039;&#039;: en général, une commande &amp;lt;code&amp;gt;iptables&amp;lt;/code&amp;gt; permettant d&#039;ajouter dynamiquement une règle de parefeu.&lt;br /&gt;
* &#039;&#039;&#039;cmd_timeout&#039;&#039;&#039;: durée au delà de laquelle on exécute **stop_command**.&lt;br /&gt;
* &#039;&#039;&#039;stop_command&#039;&#039;&#039;: dans notre cas, commande iptables retirant l&#039;autorisation temporaire d&#039;accès. **NB**: cela évite d&#039;oublier de jouer la séquence de ports pour refermer le parefeu et donc de laisser un port inutilement ouvert.&lt;br /&gt;
* &#039;&#039;&#039;tcpflags&#039;&#039;&#039;: les types de trames TCP attendues pour le jeu de la séquence.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;NB&#039;&#039;&#039;: on voit dans le bloc &amp;lt;code&amp;gt;openHTTPS&amp;lt;/code&amp;gt; que le service peut être utilisé à d&#039;autres fins que simplement donner un accès SSH.&lt;br /&gt;
&lt;br /&gt;
Configuration dans &amp;lt;code&amp;gt;/etc/default/knockd&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# control if we start knockd at init or not&lt;br /&gt;
# 1 = start&lt;br /&gt;
# anything else = don&#039;t start&lt;br /&gt;
# PLEASE EDIT /etc/knockd.conf BEFORE ENABLING&lt;br /&gt;
START_KNOCKD=1&lt;br /&gt;
&lt;br /&gt;
# command line options&lt;br /&gt;
KNOCKD_OPTS=&amp;quot;-i enp0s3&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;START_KNOCKD&#039;&#039;&#039; à 1 permet d&#039;activer le service au démarrage du serveur.&lt;br /&gt;
* &#039;&#039;&#039;KNOCKD_OPTS&#039;&#039;&#039; permet d&#039;ajouter des options à l&#039;appel du lancement du service.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;NB&#039;&#039;&#039;: l&#039;option &amp;lt;code&amp;gt;-i&amp;lt;/code&amp;gt; est très importante, car sans configurer une interface d&#039;écoute, le service ne démarrera tout simplement pas.&lt;br /&gt;
&lt;br /&gt;
= Configuration côté client =&lt;br /&gt;
&lt;br /&gt;
Pour jouer la séquence d&#039;accès aux ports servant de combinaison d&#039;accès (ou d&#039;annulation de l&#039;accès), utiliser le client &amp;lt;code&amp;gt;knock&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
knock &amp;lt;ip_destination&amp;gt; -v &amp;lt;port1&amp;gt; &amp;lt;port2&amp;gt; &amp;lt;port3&amp;gt;...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Options:&lt;br /&gt;
* &amp;lt;code&amp;gt;-v&amp;lt;/code&amp;gt;: mode verbeux, pour voir en temps réel le travail du client knock.&lt;br /&gt;
* &amp;lt;code&amp;gt;-d&amp;lt;/code&amp;gt;: délai entre chaque accès aux ports de la liste.&lt;br /&gt;
&lt;br /&gt;
Dans le cas où l&#039;on utilise un fichier de configuration SSH (ex: &amp;lt;code&amp;gt;~/.ssh/config&amp;lt;/code&amp;gt;), on peut configurer l&#039;accès comme suit:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Host maquetteknock&lt;br /&gt;
        Hostname 10.0.2.9&lt;br /&gt;
        Port 22&lt;br /&gt;
        User julien&lt;br /&gt;
        IdentityFile ~/.ssh/id_ecdsa&lt;br /&gt;
&lt;br /&gt;
Match host 10.0.2.9 exec &amp;quot;knock -d 500 %h 2001 2004 2007&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le bloc &amp;lt;code&amp;gt;Host&amp;lt;/code&amp;gt; est assez classique:&lt;br /&gt;
* définition du hostname / de l&#039;IP à joindre.&lt;br /&gt;
* port à contacter pour se connecter en SSH.&lt;br /&gt;
* l&#039;utilisateur de connexion.&lt;br /&gt;
* le fichier de clé privé servant à l&#039;authentification.&lt;br /&gt;
&lt;br /&gt;
La configuration &amp;lt;code&amp;gt;Match host/exec&amp;lt;/code&amp;gt; sert, dans notre cas, à exécuter une commande en préalable de l&#039;établissement de la session: ici la commande &amp;lt;code&amp;gt;knock&amp;lt;/code&amp;gt; permettant d&#039;ouvrir les flux.&lt;br /&gt;
&lt;br /&gt;
[[Category:Howto]]&lt;br /&gt;
[[Category:Systeme]]&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:Sécurité]]&lt;/div&gt;</summary>
		<author><name>Jules</name></author>
	</entry>
	<entry>
		<id>http://wiki.pedrono.fr/index.php?title=SSH_-_Configuration_du_Port_Knocking&amp;diff=950</id>
		<title>SSH - Configuration du Port Knocking</title>
		<link rel="alternate" type="text/html" href="http://wiki.pedrono.fr/index.php?title=SSH_-_Configuration_du_Port_Knocking&amp;diff=950"/>
		<updated>2025-12-23T13:45:10Z</updated>

		<summary type="html">&lt;p&gt;Jules : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Introduction =&lt;br /&gt;
&lt;br /&gt;
La technique de Port Knocking consiste à autoriser des connexions SSH (mais pas que) en fonction de l&#039;accès à une suite de port depuis le client.&lt;br /&gt;
&lt;br /&gt;
De cette façon, &lt;br /&gt;
* il n&#039;est pas nécessaire d&#039;avoir une règle autorisant une IP ou une liste d&#039;IP à se connecter en SSH.&lt;br /&gt;
* il suffit simplement de connaître la séquence de port à prober pour ouvrir le flux temporairement et pouvoir se connecter.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;NB&#039;&#039;&#039;: il peut être contraignant de restreindre l&#039;accès au port SSH par iptables pour plusieurs raisons&lt;br /&gt;
* certaines IPs de box notamment sont susceptibles de changer dans le temps.&lt;br /&gt;
* on n&#039;est pas toujours derrière ces IPs au moment où on a besoin de se connecter.&lt;br /&gt;
&lt;br /&gt;
= Packages à installer =&lt;br /&gt;
&lt;br /&gt;
Qu&#039;on souhaite utiliser le service &amp;lt;code&amp;gt;knockd&amp;lt;/code&amp;gt; ou le client &amp;lt;code&amp;gt;knock&amp;lt;/code&amp;gt;, le package à installer est le même:&lt;br /&gt;
&lt;br /&gt;
 apt install knockd&lt;br /&gt;
&lt;br /&gt;
= Configuration côté serveur =&lt;br /&gt;
&lt;br /&gt;
Configuration dans &amp;lt;code&amp;gt;/etc/knockd.conf&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[options]&lt;br /&gt;
        logfile     = /var/log/knockd.log&lt;br /&gt;
&lt;br /&gt;
[openSSH]&lt;br /&gt;
        sequence    = 2001,2004,2007&lt;br /&gt;
        seq_timeout = 5&lt;br /&gt;
        command     = /sbin/iptables -A INPUT -s %IP% -p tcp --dport 22 -j ACCEPT&lt;br /&gt;
        cmd_timeout = 10&lt;br /&gt;
        stop_command = /sbin/iptables -D INPUT -s %IP% -p tcp --dport 22 -j ACCEPT&lt;br /&gt;
        tcpflags    = syn&lt;br /&gt;
&lt;br /&gt;
[closeSSH]&lt;br /&gt;
        sequence    = 2007,2004,2001&lt;br /&gt;
        seq_timeout = 5&lt;br /&gt;
        command     = /sbin/iptables -D INPUT -s %IP% -p tcp --dport 22 -j ACCEPT&lt;br /&gt;
        tcpflags    = syn&lt;br /&gt;
&lt;br /&gt;
[openHTTPS]&lt;br /&gt;
        sequence    = 12345,54321,24680,13579&lt;br /&gt;
        seq_timeout = 5&lt;br /&gt;
        command     = /usr/local/sbin/knock_add -i -c INPUT -p tcp -d 443 -f %IP%&lt;br /&gt;
        tcpflags    = syn&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Détails sur l&#039;utilité des options:&lt;br /&gt;
* &#039;&#039;&#039;logfile&#039;&#039;&#039;: par défaut, le service log dans le log système global, il est parfois plus pratique d&#039;avoir un log dédié pour éviter les pollutions pendant un diag de fonctionnement.&lt;br /&gt;
* &#039;&#039;&#039;seq_timeout&#039;&#039;&#039;: la durée pendant laquelle le service attends la séquence de ports.&lt;br /&gt;
* &#039;&#039;&#039;command&#039;&#039;&#039;: en général, une commande &amp;lt;code&amp;gt;iptables&amp;lt;/code&amp;gt; permettant d&#039;ajouter dynamiquement une règle de parefeu.&lt;br /&gt;
* &#039;&#039;&#039;cmd_timeout&#039;&#039;&#039;: durée au delà de laquelle on exécute **stop_command**.&lt;br /&gt;
* &#039;&#039;&#039;stop_command&#039;&#039;&#039;: dans notre cas, commande iptables retirant l&#039;autorisation temporaire d&#039;accès. **NB**: cela évite d&#039;oublier de jouer la séquence de ports pour refermer le parefeu et donc de laisser un port inutilement ouvert.&lt;br /&gt;
* &#039;&#039;&#039;tcpflags&#039;&#039;&#039;: les types de trames TCP attendues pour le jeu de la séquence.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;NB&#039;&#039;&#039;: on voit dans le bloc &amp;lt;code&amp;gt;openHTTPS&amp;lt;/code&amp;gt; que le service peut être utilisé à d&#039;autres fins que simplement donner un accès SSH.&lt;br /&gt;
&lt;br /&gt;
Configuration dans &amp;lt;code&amp;gt;/etc/default/knockd&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# control if we start knockd at init or not&lt;br /&gt;
# 1 = start&lt;br /&gt;
# anything else = don&#039;t start&lt;br /&gt;
# PLEASE EDIT /etc/knockd.conf BEFORE ENABLING&lt;br /&gt;
START_KNOCKD=1&lt;br /&gt;
&lt;br /&gt;
# command line options&lt;br /&gt;
KNOCKD_OPTS=&amp;quot;-i enp0s3&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;START_KNOCKD&#039;&#039;&#039; à 1 permet d&#039;activer le service au démarrage du serveur.&lt;br /&gt;
* &#039;&#039;&#039;KNOCKD_OPTS&#039;&#039;&#039; permet d&#039;ajouter des options à l&#039;appel du lancement du service.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;NB&#039;&#039;&#039;: l&#039;option &amp;lt;code&amp;gt;-i&amp;lt;/code&amp;gt; est très importante, car sans configurer une interface d&#039;écoute, le service ne démarrera tout simplement pas.&lt;br /&gt;
&lt;br /&gt;
= Configuration côté client =&lt;br /&gt;
&lt;br /&gt;
Pour jouer la séquence d&#039;accès aux ports servant de combinaison d&#039;accès (ou d&#039;annulation de l&#039;accès), utiliser le client &amp;lt;code&amp;gt;knock&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
knock &amp;lt;ip_destination&amp;gt; -v &amp;lt;port1&amp;gt; &amp;lt;port2&amp;gt; &amp;lt;port3&amp;gt;...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Options:&lt;br /&gt;
* &amp;lt;code&amp;gt;-v&amp;lt;/code&amp;gt;: mode verbeux, pour voir en temps réel le travail du client knock.&lt;br /&gt;
* &amp;lt;code&amp;gt;-d&amp;lt;/code&amp;gt;: délai entre chaque accès aux ports de la liste.&lt;br /&gt;
&lt;br /&gt;
Dans le cas où l&#039;on utilise un fichier de configuration SSH (ex: &amp;lt;code&amp;gt;~/.ssh/config&amp;lt;/code&amp;gt;), on peut configurer l&#039;accès comme suit:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Host maquetteknock&lt;br /&gt;
        Hostname 10.0.2.9&lt;br /&gt;
        Port 22&lt;br /&gt;
        User julien&lt;br /&gt;
        IdentityFile ~/.ssh/id_ecdsa&lt;br /&gt;
&lt;br /&gt;
Match host 10.0.2.9 exec &amp;quot;knock -d 500 %h 2001 2004 2007&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le bloc &amp;lt;code&amp;gt;Host&amp;lt;/code&amp;gt; est assez classique:&lt;br /&gt;
* définition du hostname / de l&#039;IP à joindre.&lt;br /&gt;
* port à contacter pour se connecter en SSH.&lt;br /&gt;
* l&#039;utilisateur de connexion.&lt;br /&gt;
* le fichier de clé privé servant à l&#039;authentification.&lt;br /&gt;
&lt;br /&gt;
La configuration &amp;lt;code&amp;gt;Match host/exec&amp;lt;/code&amp;gt; sert, dans notre cas, à exécuter une commande en préalable de l&#039;établissement de la session: ici la commande &amp;lt;code&amp;gt;knock&amp;lt;/code&amp;gt; permettant d&#039;ouvrir les flux.&lt;/div&gt;</summary>
		<author><name>Jules</name></author>
	</entry>
	<entry>
		<id>http://wiki.pedrono.fr/index.php?title=SSH_-_Configuration_du_Port_Knocking&amp;diff=949</id>
		<title>SSH - Configuration du Port Knocking</title>
		<link rel="alternate" type="text/html" href="http://wiki.pedrono.fr/index.php?title=SSH_-_Configuration_du_Port_Knocking&amp;diff=949"/>
		<updated>2025-12-23T13:40:01Z</updated>

		<summary type="html">&lt;p&gt;Jules : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Introduction =&lt;br /&gt;
&lt;br /&gt;
La technique de Port Knocking consiste à autoriser des connexions SSH (mais pas que) en fonction de l&#039;accès à une suite de port depuis le client.&lt;br /&gt;
&lt;br /&gt;
De cette façon, &lt;br /&gt;
* il n&#039;est pas nécessaire d&#039;avoir une règle autorisant une IP ou une liste d&#039;IP à se connecter en SSH.&lt;br /&gt;
* il suffit simplement de connaître la séquence de port à prober pour ouvrir le flux temporairement et pouvoir se connecter.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;NB&#039;&#039;&#039;: il peut être contraignant de restreindre l&#039;accès au port SSH par iptables pour plusieurs raisons&lt;br /&gt;
* certaines IPs de box notamment sont susceptibles de changer dans le temps.&lt;br /&gt;
* on n&#039;est pas toujours derrière ces IPs au moment où on a besoin de se connecter.&lt;br /&gt;
&lt;br /&gt;
= Packages à installer =&lt;br /&gt;
&lt;br /&gt;
Qu&#039;on souhaite utiliser le service &amp;lt;code&amp;gt;knockd&amp;lt;/code&amp;gt; ou le client &amp;lt;code&amp;gt;knock&amp;lt;/code&amp;gt;, le package à installer est le même:&lt;br /&gt;
&lt;br /&gt;
 apt install knockd&lt;br /&gt;
&lt;br /&gt;
= Configuration côté serveur =&lt;br /&gt;
&lt;br /&gt;
Configuration dans &amp;lt;code&amp;gt;/etc/knockd.conf&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[options]&lt;br /&gt;
        logfile     = /var/log/knockd.log&lt;br /&gt;
&lt;br /&gt;
[openSSH]&lt;br /&gt;
        sequence    = 2001,2004,2007&lt;br /&gt;
        seq_timeout = 5&lt;br /&gt;
        command     = /sbin/iptables -A INPUT -s %IP% -p tcp --dport 22 -j ACCEPT&lt;br /&gt;
        cmd_timeout = 10&lt;br /&gt;
        stop_command = /sbin/iptables -D INPUT -s %IP% -p tcp --dport 22 -j ACCEPT&lt;br /&gt;
        tcpflags    = syn&lt;br /&gt;
&lt;br /&gt;
[closeSSH]&lt;br /&gt;
        sequence    = 2007,2004,2001&lt;br /&gt;
        seq_timeout = 5&lt;br /&gt;
        command     = /sbin/iptables -D INPUT -s %IP% -p tcp --dport 22 -j ACCEPT&lt;br /&gt;
        tcpflags    = syn&lt;br /&gt;
&lt;br /&gt;
[openHTTPS]&lt;br /&gt;
        sequence    = 12345,54321,24680,13579&lt;br /&gt;
        seq_timeout = 5&lt;br /&gt;
        command     = /usr/local/sbin/knock_add -i -c INPUT -p tcp -d 443 -f %IP%&lt;br /&gt;
        tcpflags    = syn&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Détails sur l&#039;utilité des options:&lt;br /&gt;
* &#039;&#039;&#039;logfile&#039;&#039;&#039;: par défaut, le service log dans le log système global, il est parfois plus pratique d&#039;avoir un log dédié pour éviter les pollutions pendant un diag de fonctionnement.&lt;br /&gt;
* &#039;&#039;&#039;seq_timeout&#039;&#039;&#039;: la durée pendant laquelle le service attends la séquence de ports.&lt;br /&gt;
* &#039;&#039;&#039;command&#039;&#039;&#039;: en général, une commande &amp;lt;code&amp;gt;iptables&amp;lt;/code&amp;gt; permettant d&#039;ajouter dynamiquement une règle de parefeu.&lt;br /&gt;
* &#039;&#039;&#039;cmd_timeout&#039;&#039;&#039;: durée au delà de laquelle on exécute **stop_command**.&lt;br /&gt;
* &#039;&#039;&#039;stop_command&#039;&#039;&#039;: dans notre cas, commande iptables retirant l&#039;autorisation temporaire d&#039;accès. **NB**: cela évite d&#039;oublier de jouer la séquence de ports pour refermer le parefeu et donc de laisser un port inutilement ouvert.&lt;br /&gt;
* &#039;&#039;&#039;tcpflags&#039;&#039;&#039;: les types de trames TCP attendues pour le jeu de la séquence.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;NB&#039;&#039;&#039;: on voit dans le bloc &amp;lt;code&amp;gt;openHTTPS&amp;lt;/code&amp;gt; que le service peut être utilisé à d&#039;autres fins que simplement donner un accès SSH.&lt;br /&gt;
&lt;br /&gt;
Configuration dans &amp;lt;code&amp;gt;/etc/default/knockd&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# control if we start knockd at init or not&lt;br /&gt;
# 1 = start&lt;br /&gt;
# anything else = don&#039;t start&lt;br /&gt;
# PLEASE EDIT /etc/knockd.conf BEFORE ENABLING&lt;br /&gt;
START_KNOCKD=1&lt;br /&gt;
&lt;br /&gt;
# command line options&lt;br /&gt;
KNOCKD_OPTS=&amp;quot;-i enp0s3&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;START_KNOCKD&#039;&#039;&#039; à 1 permet d&#039;activer le service au démarrage du serveur.&lt;br /&gt;
* &#039;&#039;&#039;KNOCKD_OPTS&#039;&#039;&#039; permet d&#039;ajouter des options à l&#039;appel du lancement du service.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;NB&#039;&#039;&#039;: l&#039;option &amp;lt;code&amp;gt;-i&amp;lt;/code&amp;gt; est très importante, car sans configurer une interface d&#039;écoute, le service ne démarrera tout simplement pas.&lt;br /&gt;
&lt;br /&gt;
= Configuration côté client =&lt;br /&gt;
&lt;br /&gt;
Pour jouer la séquence d&#039;accès aux ports servant de combinaison d&#039;accès (ou d&#039;annulation de l&#039;accès), utiliser le client &amp;lt;code&amp;gt;knock&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
knock &amp;lt;ip_destination&amp;gt; -v &amp;lt;port1&amp;gt; &amp;lt;port2&amp;gt; &amp;lt;port3&amp;gt;...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Jules</name></author>
	</entry>
	<entry>
		<id>http://wiki.pedrono.fr/index.php?title=SSH_-_Configuration_du_Port_Knocking&amp;diff=948</id>
		<title>SSH - Configuration du Port Knocking</title>
		<link rel="alternate" type="text/html" href="http://wiki.pedrono.fr/index.php?title=SSH_-_Configuration_du_Port_Knocking&amp;diff=948"/>
		<updated>2025-12-23T13:37:49Z</updated>

		<summary type="html">&lt;p&gt;Jules : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Introduction =&lt;br /&gt;
&lt;br /&gt;
La technique de Port Knocking consiste à autoriser des connexions SSH (mais pas que) en fonction de l&#039;accès à une suite de port depuis le client.&lt;br /&gt;
&lt;br /&gt;
De cette façon, &lt;br /&gt;
* il n&#039;est pas nécessaire d&#039;avoir une règle autorisant une IP ou une liste d&#039;IP à se connecter en SSH.&lt;br /&gt;
* il suffit simplement de connaître la séquence de port à prober pour ouvrir le flux temporairement et pouvoir se connecter.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;NB&#039;&#039;&#039;: il peut être contraignant de restreindre l&#039;accès au port SSH par iptables pour plusieurs raisons&lt;br /&gt;
* certaines IPs de box notamment sont susceptibles de changer dans le temps.&lt;br /&gt;
* on n&#039;est pas toujours derrière ces IPs au moment où on a besoin de se connecter.&lt;br /&gt;
&lt;br /&gt;
= Packages à installer =&lt;br /&gt;
&lt;br /&gt;
Qu&#039;on souhaite utiliser le service &amp;lt;code&amp;gt;knockd&amp;lt;/code&amp;gt; ou le client &amp;lt;code&amp;gt;knock&amp;lt;/code&amp;gt;, le package à installer est le même:&lt;br /&gt;
&lt;br /&gt;
 apt install knockd&lt;br /&gt;
&lt;br /&gt;
= Configuration côté serveur =&lt;br /&gt;
&lt;br /&gt;
Configuration dans &amp;lt;code&amp;gt;/etc/knockd.conf&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[options]&lt;br /&gt;
        logfile     = /var/log/knockd.log&lt;br /&gt;
&lt;br /&gt;
[openSSH]&lt;br /&gt;
        sequence    = 2001,2004,2007&lt;br /&gt;
        seq_timeout = 5&lt;br /&gt;
        command     = /sbin/iptables -A INPUT -s %IP% -p tcp --dport 22 -j ACCEPT&lt;br /&gt;
        cmd_timeout = 10&lt;br /&gt;
        stop_command = /sbin/iptables -D INPUT -s %IP% -p tcp --dport 22 -j ACCEPT&lt;br /&gt;
        tcpflags    = syn&lt;br /&gt;
&lt;br /&gt;
[closeSSH]&lt;br /&gt;
        sequence    = 2007,2004,2001&lt;br /&gt;
        seq_timeout = 5&lt;br /&gt;
        command     = /sbin/iptables -D INPUT -s %IP% -p tcp --dport 22 -j ACCEPT&lt;br /&gt;
        tcpflags    = syn&lt;br /&gt;
&lt;br /&gt;
[openHTTPS]&lt;br /&gt;
        sequence    = 12345,54321,24680,13579&lt;br /&gt;
        seq_timeout = 5&lt;br /&gt;
        command     = /usr/local/sbin/knock_add -i -c INPUT -p tcp -d 443 -f %IP%&lt;br /&gt;
        tcpflags    = syn&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Détails sur l&#039;utilité des options:&lt;br /&gt;
* &#039;&#039;&#039;logfile&#039;&#039;&#039;: par défaut, le service log dans le log système global, il est parfois plus pratique d&#039;avoir un log dédié pour éviter les pollutions pendant un diag de fonctionnement.&lt;br /&gt;
* &#039;&#039;&#039;seq_timeout&#039;&#039;&#039;: la durée pendant laquelle le service attends la séquence de ports.&lt;br /&gt;
* &#039;&#039;&#039;command&#039;&#039;&#039;: en général, une commande &amp;lt;code&amp;gt;iptables&amp;lt;/code&amp;gt; permettant d&#039;ajouter dynamiquement une règle de parefeu.&lt;br /&gt;
* &#039;&#039;&#039;cmd_timeout&#039;&#039;&#039;: durée au delà de laquelle on exécute **stop_command**.&lt;br /&gt;
* &#039;&#039;&#039;stop_command&#039;&#039;&#039;: dans notre cas, commande iptables retirant l&#039;autorisation temporaire d&#039;accès. **NB**: cela évite d&#039;oublier de jouer la séquence de ports pour refermer le parefeu et donc de laisser un port inutilement ouvert.&lt;br /&gt;
* &#039;&#039;&#039;tcpflags&#039;&#039;&#039;: les types de trames TCP attendues pour le jeu de la séquence.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;NB&#039;&#039;&#039;: on voit dans le bloc &amp;lt;code&amp;gt;openHTTPS&amp;lt;/code&amp;gt; que le service peut être utilisé à d&#039;autres fins que simplement donner un accès SSH.&lt;br /&gt;
&lt;br /&gt;
Configuration dans &amp;lt;code&amp;gt;/etc/default/&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# control if we start knockd at init or not&lt;br /&gt;
# 1 = start&lt;br /&gt;
# anything else = don&#039;t start&lt;br /&gt;
# PLEASE EDIT /etc/knockd.conf BEFORE ENABLING&lt;br /&gt;
START_KNOCKD=1&lt;br /&gt;
&lt;br /&gt;
# command line options&lt;br /&gt;
KNOCKD_OPTS=&amp;quot;-i enp0s3&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;START_KNOCKD&#039;&#039;&#039; à 1 permet d&#039;activer le service au démarrage du serveur.&lt;br /&gt;
* &#039;&#039;&#039;KNOCKD_OPTS&#039;&#039;&#039; permet d&#039;ajouter des options à l&#039;appel du lancement du service.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;NB&#039;&#039;&#039;: l&#039;option &amp;lt;code&amp;gt;-i&amp;lt;/code&amp;gt; est très importante, car sans configurer une interface d&#039;écoute, le service ne démarrera tout simplement pas.&lt;br /&gt;
&lt;br /&gt;
= Configuration côté client =&lt;/div&gt;</summary>
		<author><name>Jules</name></author>
	</entry>
	<entry>
		<id>http://wiki.pedrono.fr/index.php?title=SSH_-_Configuration_du_Port_Knocking&amp;diff=947</id>
		<title>SSH - Configuration du Port Knocking</title>
		<link rel="alternate" type="text/html" href="http://wiki.pedrono.fr/index.php?title=SSH_-_Configuration_du_Port_Knocking&amp;diff=947"/>
		<updated>2025-12-23T13:37:15Z</updated>

		<summary type="html">&lt;p&gt;Jules : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Introduction =&lt;br /&gt;
&lt;br /&gt;
La technique de Port Knocking consiste à autoriser des connexions SSH (mais pas que) en fonction de l&#039;accès à une suite de port depuis le client.&lt;br /&gt;
&lt;br /&gt;
De cette façon, &lt;br /&gt;
* il n&#039;est pas nécessaire d&#039;avoir une règle autorisant une IP ou une liste d&#039;IP à se connecter en SSH.&lt;br /&gt;
* il suffit simplement de connaître la séquence de port à prober pour ouvrir le flux temporairement et pouvoir se connecter.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;NB&#039;&#039;&#039;: il peut être contraignant de restreindre l&#039;accès au port SSH par iptables pour plusieurs raisons&lt;br /&gt;
* certaines IPs de box notamment sont susceptibles de changer dans le temps.&lt;br /&gt;
* on n&#039;est pas toujours derrière ces IPs au moment où on a besoin de se connecter.&lt;br /&gt;
&lt;br /&gt;
= Packages à installer =&lt;br /&gt;
&lt;br /&gt;
Qu&#039;on souhaite utiliser le service &amp;lt;code&amp;gt;knockd&amp;lt;/code&amp;gt; ou le client &amp;lt;code&amp;gt;knock&amp;lt;/code&amp;gt;, le package à installer est le même:&lt;br /&gt;
&lt;br /&gt;
 apt install knockd&lt;br /&gt;
&lt;br /&gt;
= Configuration côté serveur =&lt;br /&gt;
&lt;br /&gt;
Configuration dans &amp;lt;pre&amp;gt;/etc/knockd.conf&amp;lt;/pre&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[options]&lt;br /&gt;
        logfile     = /var/log/knockd.log&lt;br /&gt;
&lt;br /&gt;
[openSSH]&lt;br /&gt;
        sequence    = 2001,2004,2007&lt;br /&gt;
        seq_timeout = 5&lt;br /&gt;
        command     = /sbin/iptables -A INPUT -s %IP% -p tcp --dport 22 -j ACCEPT&lt;br /&gt;
        cmd_timeout = 10&lt;br /&gt;
        stop_command = /sbin/iptables -D INPUT -s %IP% -p tcp --dport 22 -j ACCEPT&lt;br /&gt;
        tcpflags    = syn&lt;br /&gt;
&lt;br /&gt;
[closeSSH]&lt;br /&gt;
        sequence    = 2007,2004,2001&lt;br /&gt;
        seq_timeout = 5&lt;br /&gt;
        command     = /sbin/iptables -D INPUT -s %IP% -p tcp --dport 22 -j ACCEPT&lt;br /&gt;
        tcpflags    = syn&lt;br /&gt;
&lt;br /&gt;
[openHTTPS]&lt;br /&gt;
        sequence    = 12345,54321,24680,13579&lt;br /&gt;
        seq_timeout = 5&lt;br /&gt;
        command     = /usr/local/sbin/knock_add -i -c INPUT -p tcp -d 443 -f %IP%&lt;br /&gt;
        tcpflags    = syn&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Détails sur l&#039;utilité des options:&lt;br /&gt;
* &#039;&#039;&#039;logfile&#039;&#039;&#039;: par défaut, le service log dans le log système global, il est parfois plus pratique d&#039;avoir un log dédié pour éviter les pollutions pendant un diag de fonctionnement.&lt;br /&gt;
* &#039;&#039;&#039;seq_timeout&#039;&#039;&#039;: la durée pendant laquelle le service attends la séquence de ports.&lt;br /&gt;
* &#039;&#039;&#039;command&#039;&#039;&#039;: en général, une commande &amp;lt;pre&amp;gt;iptables&amp;lt;/pre&amp;gt; permettant d&#039;ajouter dynamiquement une règle de parefeu.&lt;br /&gt;
* &#039;&#039;&#039;cmd_timeout&#039;&#039;&#039;: durée au delà de laquelle on exécute **stop_command**.&lt;br /&gt;
* &#039;&#039;&#039;stop_command&#039;&#039;&#039;: dans notre cas, commande iptables retirant l&#039;autorisation temporaire d&#039;accès. **NB**: cela évite d&#039;oublier de jouer la séquence de ports pour refermer le parefeu et donc de laisser un port inutilement ouvert.&lt;br /&gt;
* &#039;&#039;&#039;tcpflags&#039;&#039;&#039;: les types de trames TCP attendues pour le jeu de la séquence.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;NB&#039;&#039;&#039;: on voit dans le bloc &amp;lt;pre&amp;gt;openHTTPS&amp;lt;/pre&amp;gt; que le service peut être utilisé à d&#039;autres fins que simplement donner un accès SSH.&lt;br /&gt;
&lt;br /&gt;
Configuration dans &amp;lt;pre&amp;gt;/etc/default/&amp;lt;/pre&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# control if we start knockd at init or not&lt;br /&gt;
# 1 = start&lt;br /&gt;
# anything else = don&#039;t start&lt;br /&gt;
# PLEASE EDIT /etc/knockd.conf BEFORE ENABLING&lt;br /&gt;
START_KNOCKD=1&lt;br /&gt;
&lt;br /&gt;
# command line options&lt;br /&gt;
KNOCKD_OPTS=&amp;quot;-i enp0s3&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;START_KNOCKD&#039;&#039;&#039; à 1 permet d&#039;activer le service au démarrage du serveur.&lt;br /&gt;
* &#039;&#039;&#039;KNOCKD_OPTS&#039;&#039;&#039; permet d&#039;ajouter des options à l&#039;appel du lancement du service.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;NB&#039;&#039;&#039;: l&#039;option &amp;lt;pre&amp;gt;-i&amp;lt;/pre&amp;gt; est très importante, car sans configurer une interface d&#039;écoute, le service ne démarrera tout simplement pas.&lt;br /&gt;
= Configuration côté client =&lt;/div&gt;</summary>
		<author><name>Jules</name></author>
	</entry>
	<entry>
		<id>http://wiki.pedrono.fr/index.php?title=SSH_-_Configuration_du_Port_Knocking&amp;diff=946</id>
		<title>SSH - Configuration du Port Knocking</title>
		<link rel="alternate" type="text/html" href="http://wiki.pedrono.fr/index.php?title=SSH_-_Configuration_du_Port_Knocking&amp;diff=946"/>
		<updated>2025-12-23T13:35:54Z</updated>

		<summary type="html">&lt;p&gt;Jules : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Introduction =&lt;br /&gt;
&lt;br /&gt;
La technique de Port Knocking consiste à autoriser des connexions SSH (mais pas que) en fonction de l&#039;accès à une suite de port depuis le client.&lt;br /&gt;
&lt;br /&gt;
De cette façon, &lt;br /&gt;
* il n&#039;est pas nécessaire d&#039;avoir une règle autorisant une IP ou une liste d&#039;IP à se connecter en SSH.&lt;br /&gt;
* il suffit simplement de connaître la séquence de port à prober pour ouvrir le flux temporairement et pouvoir se connecter.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;NB&#039;&#039;&#039;: il peut être contraignant de restreindre l&#039;accès au port SSH par iptables pour plusieurs raisons&lt;br /&gt;
* certaines IPs de box notamment sont susceptibles de changer dans le temps.&lt;br /&gt;
* on n&#039;est pas toujours derrière ces IPs au moment où on a besoin de se connecter.&lt;br /&gt;
&lt;br /&gt;
= Packages à installer =&lt;br /&gt;
&lt;br /&gt;
Qu&#039;on souhaite utiliser le service &amp;lt;pre&amp;gt;knockd&amp;lt;/pre&amp;gt; ou le client &amp;lt;pre&amp;gt;knock&amp;lt;/pre&amp;gt;, le package à installer est le même:&lt;br /&gt;
&lt;br /&gt;
 apt install knockd&lt;br /&gt;
&lt;br /&gt;
= Configuration côté serveur =&lt;br /&gt;
&lt;br /&gt;
Configuration dans &amp;lt;pre&amp;gt;/etc/knockd.conf&amp;lt;/pre&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[options]&lt;br /&gt;
        logfile     = /var/log/knockd.log&lt;br /&gt;
&lt;br /&gt;
[openSSH]&lt;br /&gt;
        sequence    = 2001,2004,2007&lt;br /&gt;
        seq_timeout = 5&lt;br /&gt;
        command     = /sbin/iptables -A INPUT -s %IP% -p tcp --dport 22 -j ACCEPT&lt;br /&gt;
        cmd_timeout = 10&lt;br /&gt;
        stop_command = /sbin/iptables -D INPUT -s %IP% -p tcp --dport 22 -j ACCEPT&lt;br /&gt;
        tcpflags    = syn&lt;br /&gt;
&lt;br /&gt;
[closeSSH]&lt;br /&gt;
        sequence    = 2007,2004,2001&lt;br /&gt;
        seq_timeout = 5&lt;br /&gt;
        command     = /sbin/iptables -D INPUT -s %IP% -p tcp --dport 22 -j ACCEPT&lt;br /&gt;
        tcpflags    = syn&lt;br /&gt;
&lt;br /&gt;
[openHTTPS]&lt;br /&gt;
        sequence    = 12345,54321,24680,13579&lt;br /&gt;
        seq_timeout = 5&lt;br /&gt;
        command     = /usr/local/sbin/knock_add -i -c INPUT -p tcp -d 443 -f %IP%&lt;br /&gt;
        tcpflags    = syn&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Détails sur l&#039;utilité des options:&lt;br /&gt;
* &#039;&#039;&#039;logfile&#039;&#039;&#039;: par défaut, le service log dans le log système global, il est parfois plus pratique d&#039;avoir un log dédié pour éviter les pollutions pendant un diag de fonctionnement.&lt;br /&gt;
* &#039;&#039;&#039;seq_timeout&#039;&#039;&#039;: la durée pendant laquelle le service attends la séquence de ports.&lt;br /&gt;
* &#039;&#039;&#039;command&#039;&#039;&#039;: en général, une commande &amp;lt;pre&amp;gt;iptables&amp;lt;/pre&amp;gt; permettant d&#039;ajouter dynamiquement une règle de parefeu.&lt;br /&gt;
* &#039;&#039;&#039;cmd_timeout&#039;&#039;&#039;: durée au delà de laquelle on exécute **stop_command**.&lt;br /&gt;
* &#039;&#039;&#039;stop_command&#039;&#039;&#039;: dans notre cas, commande iptables retirant l&#039;autorisation temporaire d&#039;accès. **NB**: cela évite d&#039;oublier de jouer la séquence de ports pour refermer le parefeu et donc de laisser un port inutilement ouvert.&lt;br /&gt;
* &#039;&#039;&#039;tcpflags&#039;&#039;&#039;: les types de trames TCP attendues pour le jeu de la séquence.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;NB&#039;&#039;&#039;: on voit dans le bloc &amp;lt;pre&amp;gt;openHTTPS&amp;lt;/pre&amp;gt; que le service peut être utilisé à d&#039;autres fins que simplement donner un accès SSH.&lt;br /&gt;
&lt;br /&gt;
Configuration dans &amp;lt;pre&amp;gt;/etc/default/&amp;lt;/pre&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# control if we start knockd at init or not&lt;br /&gt;
# 1 = start&lt;br /&gt;
# anything else = don&#039;t start&lt;br /&gt;
# PLEASE EDIT /etc/knockd.conf BEFORE ENABLING&lt;br /&gt;
START_KNOCKD=1&lt;br /&gt;
&lt;br /&gt;
# command line options&lt;br /&gt;
KNOCKD_OPTS=&amp;quot;-i enp0s3&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;START_KNOCKD&#039;&#039;&#039; à 1 permet d&#039;activer le service au démarrage du serveur.&lt;br /&gt;
* &#039;&#039;&#039;KNOCKD_OPTS&#039;&#039;&#039; permet d&#039;ajouter des options à l&#039;appel du lancement du service.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;NB&#039;&#039;&#039;: l&#039;option &amp;lt;pre&amp;gt;-i&amp;lt;/pre&amp;gt; est très importante, car sans configurer une interface d&#039;écoute, le service ne démarrera tout simplement pas.&lt;br /&gt;
= Configuration côté client =&lt;/div&gt;</summary>
		<author><name>Jules</name></author>
	</entry>
	<entry>
		<id>http://wiki.pedrono.fr/index.php?title=SSH_-_Configuration_du_Port_Knocking&amp;diff=945</id>
		<title>SSH - Configuration du Port Knocking</title>
		<link rel="alternate" type="text/html" href="http://wiki.pedrono.fr/index.php?title=SSH_-_Configuration_du_Port_Knocking&amp;diff=945"/>
		<updated>2025-12-23T13:15:29Z</updated>

		<summary type="html">&lt;p&gt;Jules : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Introduction =&lt;br /&gt;
&lt;br /&gt;
La technique de Port Knocking consiste à autoriser des connexions SSH (mais pas que) en fonction de l&#039;accès à une suite de port depuis le client.&lt;br /&gt;
&lt;br /&gt;
De cette façon, &lt;br /&gt;
* il n&#039;est pas nécessaire d&#039;avoir une règle autorisant une IP ou une liste d&#039;IP à se connecter en SSH.&lt;br /&gt;
* il suffit simplement de connaître la séquence de port à prober pour ouvrir le flux temporairement et pouvoir se connecter.&lt;br /&gt;
&lt;br /&gt;
**NB**: il peut être contraignant de resteindre l&#039;accès au port SSH par iptables pour plusieurs raisons&lt;br /&gt;
* certaines IPs de box notamment sont susceptibles de changer dans le temps.&lt;br /&gt;
* on n&#039;est pas toujours derrière ces IPs au moment où on a besoin de se connecter.&lt;br /&gt;
&lt;br /&gt;
= Packages à installer =&lt;br /&gt;
&lt;br /&gt;
Qu&#039;on souhaite utiliser le service &amp;lt;pre&amp;gt;knockd&amp;lt;/pre&amp;gt; ou le client &amp;lt;pre&amp;gt;knock&amp;lt;/pre&amp;gt;, le package à installer est le même:&lt;br /&gt;
&lt;br /&gt;
 apt install knockd&lt;br /&gt;
&lt;br /&gt;
= Configuration côté serveur =&lt;br /&gt;
&lt;br /&gt;
Configuration dans &amp;lt;pre&amp;gt;/etc/knockd.conf&amp;lt;/pre&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[options]&lt;br /&gt;
        logfile     = /var/log/knockd.log&lt;br /&gt;
&lt;br /&gt;
[openSSH]&lt;br /&gt;
        sequence    = 2001,2004,2007&lt;br /&gt;
        seq_timeout = 5&lt;br /&gt;
        command     = /sbin/iptables -A INPUT -s %IP% -p tcp --dport 22 -j ACCEPT&lt;br /&gt;
        cmd_timeout = 10&lt;br /&gt;
        stop_command = /sbin/iptables -D INPUT -s %IP% -p tcp --dport 22 -j ACCEPT&lt;br /&gt;
        tcpflags    = syn&lt;br /&gt;
&lt;br /&gt;
[closeSSH]&lt;br /&gt;
        sequence    = 2007,2004,2001&lt;br /&gt;
        seq_timeout = 5&lt;br /&gt;
        command     = /sbin/iptables -D INPUT -s %IP% -p tcp --dport 22 -j ACCEPT&lt;br /&gt;
        tcpflags    = syn&lt;br /&gt;
&lt;br /&gt;
[openHTTPS]&lt;br /&gt;
        sequence    = 12345,54321,24680,13579&lt;br /&gt;
        seq_timeout = 5&lt;br /&gt;
        command     = /usr/local/sbin/knock_add -i -c INPUT -p tcp -d 443 -f %IP%&lt;br /&gt;
        tcpflags    = syn&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Détails sur l&#039;utilité des options:&lt;br /&gt;
* **logfile**: par défaut, le service log dans le log système global, il est parfois plus pratique d&#039;avoir un log dédié pour éviter les pollutions pendant un diag de fonctionnement.&lt;br /&gt;
* **seq_timeout**: la durée pendant laquelle le service attends la séquence de ports.&lt;br /&gt;
* **command**: en général, une commande &amp;lt;pre&amp;gt;iptables&amp;lt;/pre&amp;gt; permettant d&#039;ajouter dynamiquement une règle de parefeu.&lt;br /&gt;
* **cmd_timeout**: durée au delà de laquelle on exécute **stop_command**.&lt;br /&gt;
* **stop_command**: dans notre cas, commande iptables retirant l&#039;autorisation temporaire d&#039;accès. **NB**: cela évite d&#039;oublier de jouer la séquence de ports pour refermer le parefeu et donc de laisser un port inutilement ouvert.&lt;br /&gt;
* ** tcpflags**: les types de trames TCP attendues pour le jeu de la séquence.&lt;br /&gt;
&lt;br /&gt;
**NB**: on voit dans le bloc &amp;lt;pre&amp;gt;openHTTPS&amp;lt;/pre&amp;gt; que le service peut être utilisé à d&#039;autres fins que simplement donner un accès SSH.&lt;br /&gt;
&lt;br /&gt;
Configuration dans &amp;lt;pre&amp;gt;/etc/default/&amp;lt;/pre&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# control if we start knockd at init or not&lt;br /&gt;
# 1 = start&lt;br /&gt;
# anything else = don&#039;t start&lt;br /&gt;
# PLEASE EDIT /etc/knockd.conf BEFORE ENABLING&lt;br /&gt;
START_KNOCKD=1&lt;br /&gt;
&lt;br /&gt;
# command line options&lt;br /&gt;
KNOCKD_OPTS=&amp;quot;-i enp0s3&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* **START_KNOCKD** à 1 permet d&#039;activer le service au démarrage du serveur.&lt;br /&gt;
* **KNOCKD_OPTS** permet d&#039;ajouter des options à l&#039;appel du lancement du service.&lt;br /&gt;
&lt;br /&gt;
**NB**: l&#039;option &amp;lt;pre&amp;gt;-i&amp;lt;/pre&amp;gt; est très importante, car sans configurer une interface d&#039;écoute, le service ne démarrera tout simplement pas.&lt;br /&gt;
= Configuration côté client =&lt;/div&gt;</summary>
		<author><name>Jules</name></author>
	</entry>
	<entry>
		<id>http://wiki.pedrono.fr/index.php?title=SSH_-_Configuration_du_Port_Knocking&amp;diff=944</id>
		<title>SSH - Configuration du Port Knocking</title>
		<link rel="alternate" type="text/html" href="http://wiki.pedrono.fr/index.php?title=SSH_-_Configuration_du_Port_Knocking&amp;diff=944"/>
		<updated>2025-12-23T13:07:15Z</updated>

		<summary type="html">&lt;p&gt;Jules : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Introduction =&lt;br /&gt;
&lt;br /&gt;
La technique de Port Knocking consiste à autoriser des connexions SSH (mais pas que) en fonction de l&#039;accès à une suite de port depuis le client.&lt;br /&gt;
&lt;br /&gt;
De cette façon, &lt;br /&gt;
* il n&#039;est pas nécessaire d&#039;avoir une règle autorisant une IP ou une liste d&#039;IP à se connecter en SSH.&lt;br /&gt;
* il suffit simplement de connaître la séquence de port à prober pour ouvrir le flux temporairement et pouvoir se connecter.&lt;br /&gt;
&lt;br /&gt;
**NB**: il peut être contraignant de resteindre l&#039;accès au port SSH par iptables pour plusieurs raisons&lt;br /&gt;
* certaines IPs de box notamment sont susceptibles de changer dans le temps.&lt;br /&gt;
* on n&#039;est pas toujours derrière ces IPs au moment où on a besoin de se connecter.&lt;br /&gt;
&lt;br /&gt;
= Packages à installer =&lt;br /&gt;
&lt;br /&gt;
Qu&#039;on souhaite utiliser le service `knockd` ou le client `knock`, le package à installer est le même:&lt;br /&gt;
&lt;br /&gt;
 apt install knockd&lt;br /&gt;
&lt;br /&gt;
= Configuration côté serveur =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Configuration côté client =&lt;/div&gt;</summary>
		<author><name>Jules</name></author>
	</entry>
	<entry>
		<id>http://wiki.pedrono.fr/index.php?title=SSH_-_Configuration_du_Port_Knocking&amp;diff=943</id>
		<title>SSH - Configuration du Port Knocking</title>
		<link rel="alternate" type="text/html" href="http://wiki.pedrono.fr/index.php?title=SSH_-_Configuration_du_Port_Knocking&amp;diff=943"/>
		<updated>2025-12-23T12:06:16Z</updated>

		<summary type="html">&lt;p&gt;Jules : Page créée avec « = Introduction =  La technique de Port Knocking consiste à autoriser des connexions SSH (mais pas que) en fonction de l&amp;#039;accès à une suite de port depuis le client.  De cette façon,  * il n&amp;#039;est pas nécessaire d&amp;#039;avoir une règle autorisant une IP ou une liste d&amp;#039;IP à se connecter en SSH. * il suffit simplement de connaître la séquence de port à prober pour ouvrir le flux temporairement et pouvoir se connecter.  = Packages à installer =  Qu&amp;#039;on souhaite util... »&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Introduction =&lt;br /&gt;
&lt;br /&gt;
La technique de Port Knocking consiste à autoriser des connexions SSH (mais pas que) en fonction de l&#039;accès à une suite de port depuis le client.&lt;br /&gt;
&lt;br /&gt;
De cette façon, &lt;br /&gt;
* il n&#039;est pas nécessaire d&#039;avoir une règle autorisant une IP ou une liste d&#039;IP à se connecter en SSH.&lt;br /&gt;
* il suffit simplement de connaître la séquence de port à prober pour ouvrir le flux temporairement et pouvoir se connecter.&lt;br /&gt;
&lt;br /&gt;
= Packages à installer =&lt;br /&gt;
&lt;br /&gt;
Qu&#039;on souhaite utiliser le service `knockd` ou le client `knock`, le package à installer est le même:&lt;br /&gt;
&lt;br /&gt;
 apt install knockd&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Configuration côté serveur =&lt;br /&gt;
&lt;br /&gt;
= Configuration côté client =&lt;/div&gt;</summary>
		<author><name>Jules</name></author>
	</entry>
</feed>