<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Souvenir from Life.fr &#187; Sécurité</title>
	<atom:link href="http://www.souvenirfromlife.fr/category/apprendre/apprendregnu-linux/apprendregnu-linuxsecurite/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.souvenirfromlife.fr</link>
	<description></description>
	<lastBuildDate>Thu, 03 Feb 2011 16:00:38 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Comment avoir un pont-levis sous Linux</title>
		<link>http://www.souvenirfromlife.fr/2008/12/08/comment-avoir-un-pont-levis-sous-linux/</link>
		<comments>http://www.souvenirfromlife.fr/2008/12/08/comment-avoir-un-pont-levis-sous-linux/#comments</comments>
		<pubDate>Mon, 08 Dec 2008 16:13:00 +0000</pubDate>
		<dc:creator>Frédéric Reynier</dc:creator>
				<category><![CDATA[Sécurité]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Ssh]]></category>

		<guid isPermaLink="false">http://www.souvenirfromlife.fr/?p=146</guid>
		<description><![CDATA[<p>Nous allons nous servir ici de la méthode du <a href="http://fr.wikipedia.org/wiki/Port_knocking" hreflang="fr">port knocking</a> qui permet de modifier le comportement d'un pare-feu en temps réel pour provoquer l'ouverture d'un port suite au lancement préalable d'une suite de connexions sur des ports distincts dans le bon ordre, à l'instar d'un code frappé à une porte.</p>]]></description>
			<content:encoded><![CDATA[<p>Nous allons nous servir ici de la méthode du <a href="http://fr.wikipedia.org/wiki/Port_knocking" hreflang="fr">port knocking</a> qui permet de modifier le comportement d&#8217;un pare-feu en temps réel pour provoquer l&#8217;ouverture d&#8217;un port suite au lancement préalable d&#8217;une suite de connexions sur des ports distincts dans le bon ordre, à l&#8217;instar d&#8217;un code frappé à une porte.</p>
<p><span id="more-146"></span></p>
<p>J&#8217;ai testé denyhosts et fail2ban sans que ces solutions me comblent. Aujourd&#8217;hui je vais vous montrer comment protéger ssh afin de ne le rendre accessible qu&#8217;aux personnes connaissant une combinaison pour que IPtables ouvre le port 22.<br />
Au préalable il faut paramétrer IPtables pour ne pas autoriser de façon permanente la connexion sur le port à protéger et autoriser le trafic entrant d&#8217;une connexion déjà établie.<br />
(voir &laquo;&nbsp;<a href="/blog/post/2008/12/08/IPtables-D%C3%A9finir-des-r%C3%A9gles-permanentes">IPtables &#8211; Définir des règles permanentes</a>&laquo;&nbsp;)</p>
<h3>Installation et paramétrage</h3>
<ul>
<li><strong>Tout d&#8217;abord il faut installer le paquet knockd:</strong></li>
</ul>
<p><code>sudo apt-get install knockd</code></p>
<ul>
<li><strong>Puis on édite le fichier /etc/default/knockd</strong></li>
</ul>
<p>Remplacer</p>
<pre> # control if we start knockd at init or not # 1 = start # anything else = don't start START_KNOCKD=0 # command line options # KNOCKD_OPTS=&quot;-i eth0&quot; </pre>
<p>par</p>
<pre> # control if we start knockd at init or not # 1 = start # anything else = don't start START_KNOCKD=1 # command line options KNOCKD_OPTS=&quot;-i eth0&quot; </pre>
<ul>
<li><strong>Ensuite on modifie le fichier /etc/knockd.conf</strong></li>
</ul>
<p>Cette exemple va permettre de protéger l&#8217;accès à ssh (port 22).</p>
<p>Remplacer</p>
<pre> [openSSH] 	sequence    = 7000,8000,9000 	seq_timeout = 5 	command     = /sbin/iptables -A INPUT -s %IP% -p tcp --dport 22 -j ACCEPT 	tcpflags    = syn [closeSSH] 	sequence    = 9000,8000,7000 	seq_timeout = 5 	command     = /sbin/iptables -D INPUT -s %IP% -p tcp --dport 22 -j ACCEPT 	tcpflags    = syn </pre>
<p>par</p>
<pre> [SSH]       sequence    = 7000:udp,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><strong>sequence</strong> correspond à la combinaison de ports à &laquo;&nbsp;knocker&nbsp;&raquo; pour effectuer la &#8216;command&#8217;. Par défaut le protocole TCP est utilisé.<br />
<strong>seq_timeout</strong> est le temps en secondes pendant lequel la combinaison doit être effectuée, après quoi elle est annulée, et il faut recommencer la séquence depuis le début.<br />
<strong>command</strong> représente la règle iptables qui sera ajoutée au pare-feu afin de permettre l&#8217;ouverture/fermeture d&#8217;un port particulier.<br />
<strong>tcpflags</strong> met en évidence les flags devant être positionnés dans les paquets reçus pour que le port soit pris en compte. Si une erreur survient, il faut recommencer le tout.</p>
<ul>
<li><strong>Il faut enfin redémarrer le service knockd:</strong></li>
</ul>
<p><code>sudo /etc/init.d/knockd restart</code></p>
<h3>Utilisation</h3>
<ul>
<li><strong>Installer le paquet knockd</strong></li>
</ul>
<p><code>sudo apt-get install knockd</code></p>
<ul>
<li><strong>Lancer ensuite cette commande</strong></li>
</ul>
<p><code>knock adresseipduserveur port1 port2 port3</code></p>
<p>Voilà vous pouvez vous connecter sur votre serveur!</p>
<h4>Solution alternative</h4>
<p>Si jamais vous ne pouvez pas installer knockd ,vous pouvez faire avec telnet:</p>
<p><code>telnet adresseipduserveur port1; telnet adresseipduserveur port2; telnet adresseipduserveur port3</code></p>
<p>Ensuite trois fois Ctrl+C et vous pouvez vous connecter sur votre serveur.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.souvenirfromlife.fr/2008/12/08/comment-avoir-un-pont-levis-sous-linux/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>IPtables &#8211; Définir des règles permanentes</title>
		<link>http://www.souvenirfromlife.fr/2008/12/08/iptables-definir-des-regles-permanentes/</link>
		<comments>http://www.souvenirfromlife.fr/2008/12/08/iptables-definir-des-regles-permanentes/#comments</comments>
		<pubDate>Mon, 08 Dec 2008 16:10:00 +0000</pubDate>
		<dc:creator>Frédéric Reynier</dc:creator>
				<category><![CDATA[Sécurité]]></category>
		<category><![CDATA[IPtables]]></category>
		<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://www.souvenirfromlife.fr/?p=145</guid>
		<description><![CDATA[<p>Comment passer des commandes à IPtables lors du démarrage de Linux?</p>]]></description>
			<content:encoded><![CDATA[<p>Comment passer des commandes à IPtables lors du démarrage de Linux?</p>
<p><span id="more-145"></span></p>
<ul>
<li><strong>Créer un fichier texte dans /etc/init.d/<em>nomdufichier</em> contenant ceci:</strong></li>
</ul>
<pre> #!/bin/bash # Commandes d'exemple iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT iptables -P INPUT DROP </pre>
<ul>
<li><strong>Rendre ce script exécutable:</strong></li>
</ul>
<p><code>sudo chmod +x /etc/init.d/<em>nomdufichier</em></code></p>
<ul>
<li><strong>Paramétrer pour qu&#8217;il soit pris en compte au démarrage:</strong></li>
</ul>
<p><code>sudo update-rc.d <em>nomdufichier</em> defaults</code></p>
<p>Et voilà au prochain démarrage les commandes contenues dans le script seront exécutées.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.souvenirfromlife.fr/2008/12/08/iptables-definir-des-regles-permanentes/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

