<?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>Blogmotion &#187; refuser</title>
	<atom:link href="http://blogmotion.fr/tag/refuser/feed" rel="self" type="application/rss+xml" />
	<link>http://blogmotion.fr</link>
	<description>Culture web et nouvelles technologies informatiques</description>
	<lastBuildDate>Sat, 11 Feb 2012 11:53:47 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<meta name="generator" content="WordPress" />
	<atom:link rel='hub' href='http://blogmotion.fr/?pushpress=hub'/>
		<item>
		<title>Recevoir une notification par email à chaque connexion SSH</title>
		<link>http://blogmotion.fr/systeme/notification-connexion-ssh-4246</link>
		<comments>http://blogmotion.fr/systeme/notification-connexion-ssh-4246#comments</comments>
		<pubDate>Sat, 24 Oct 2009 15:25:29 +0000</pubDate>
		<dc:creator>Mr Xhark</dc:creator>
				<category><![CDATA[Système]]></category>
		<category><![CDATA[autoriser]]></category>
		<category><![CDATA[connexion]]></category>
		<category><![CDATA[déconnexion]]></category>
		<category><![CDATA[intrusion]]></category>
		<category><![CDATA[refuser]]></category>
		<category><![CDATA[serveur]]></category>
		<category><![CDATA[ssh]]></category>

		<guid isPermaLink="false">http://blogmotion.fr/?p=4246</guid>
		<description><![CDATA[Une connexion SSH permet d&#8217;administrer un serveur, Linux dans la plupart des cas. Cette connexion s&#8217;effectue grâce à un login et un mot de passe associé, généralement root (bien que le login root frontal soit déconseillé). Si vous hébergez votre site/blog sur un serveur de type mutualisé ou dédié vous avez la possibilité de gérer [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignright size-full wp-image-4249" style="border: 1px solid #cccccc; margin: 10px;" title="alerte-email-connexion-ssh" src="http://blogmotion.fr/wp-content/uploads/2009/10/alerte-email-connexion-ssh.png" alt="alerte-email-connexion-ssh" width="100" height="100" />Une <strong>connexion SSH</strong> permet d&#8217;administrer un serveur, Linux dans la plupart des cas. Cette connexion s&#8217;effectue grâce à un login et un mot de passe associé, généralement root (bien que le login root frontal soit déconseillé).</p>
<p>Si vous hébergez votre site/blog sur un serveur de type mutualisé ou dédié vous avez la possibilité de gérer ce serveur à distance via SSH. Autant dire que si <strong>une personne non autorisée se connecte sur votre serveur</strong>, il est libre de littéralement détruire toutes vos données ainsi que le système.</p>
<p>Il se peut parfois que l&#8217;on vous ait volé vos identifiants et que rien ne soit passé sur votre serveur, que l&#8217;attaquant attende un moment opportun pour attaquer ou collecter certaines de vos données. Et dans ce cas vous n&#8217;en saurez rien !</p>
<p>Je vous propose de mettre une place une <strong>notification par email </strong><strong>(alerte) à chaque connexion effectuée sur votre serveur</strong>. Vous serez ainsi averti en temps réel de cette intrusion indésirable, à condition de consulter votre email régulièrement.<span id="more-4246"></span></p>
<h3>En pratique</h3>
<p>A chaque connexion un fichier contenant des commandes est appelé, il s&#8217;agit du fichier <em>.bashrc</em>. Ce fichier est présent à la racine de chaque profil utilisateur Linux.</p>
<p><strong>Éditez le fichier</strong> avec l&#8217;éditeur de votre choix (nano pour moi) :</p>
<pre class="brush: bash; title: ; notranslate">nano ~/.bashrc</pre>
<p>Se placer à la fin du fichier et <strong>ajouter le code suivant</strong> :</p>
<pre class="brush: bash; title: ; notranslate"># notification email de chaque connexion ssh
echo 'NOTIFICATION - Acces SSH en ROOT sur `hostname` le:' `date` `who` | mail -s &quot;NOTIFICATION - Connexion en ROOT via SSH depuis: `who | cut -d&quot;(&quot; -f2 | cut -d&quot;)&quot; -f1`&quot; votre@email.com</pre>
<p>En remplaçant votre adresse email en fin de ligne.</p>
<p>Si vous souhaitez envoyer le mail en copie à un second email :</p>
<pre class="brush: bash; title: ; notranslate"># notification email de chaque connexion ssh
 echo 'NOTIFICATION - Acces SSH en ROOT sur `hostname` le:' `date` `who` | mail -s &quot;NOTIFICATION - Connexion en ROOT via SSH depuis: `who | cut -d&quot;(&quot; -f2 | cut -d&quot;)&quot; -f1`&quot; votre@email.com -c second@email.com</pre>
<p>Voici un <strong>exemple de notification reçue</strong> :</p>
<p style="text-align: center;"><img class="aligncenter size-medium wp-image-4247" style="border: 1px solid #ccc;" title="notification-email" src="http://blogmotion.fr/wp-content/uploads/2009/10/notification-email-590x31.png" alt="notification-email" width="590" height="31" /></p>
<h3 style="text-align: left;">Déconnecter un utilisateur SSH</h3>
<p>Si vous recevez une notification de connexion et que celle-ci ne vous semble pas autorisée à se connecter sur votre serveur, il vous faut <strong>réagir</strong>.</p>
<p><strong>Lister toutes les connexions SSH</strong> utilisez la commande <em>who</em>:</p>
<pre class="brush: bash; title: ; notranslate"> server # who
root     pts/0        2009-10-24 15:17 (lns-bzn-20-82-55-3-2.adsl.proxad.net)</pre>
<p>La date et l&#8217;heure sont celles de la connexion.</p>
<p>Si vous n&#8217;obtenez qu&#8217;une seule ligne alors c&#8217;est vous même qui êtes connecté et personne d&#8217;autre, vous pouvez retourner à vos occupations sans souci. En revanche, si deux lignes ou plus apparaissent c&#8217;est que vous n&#8217;êtes pas la seule personne connectée sur votre serveur.</p>
<p><strong>Changer tout d&#8217;abord le mot de passe du compte concerné</strong> :</p>
<pre class="brush: bash; title: ; notranslate">server # passwd nom_du_compte</pre>
<p>A chaque connexion SSH le démon SSHD déclenche un processus, lui même identifié par un numéro de processus (PID). Il vous suffit de tuer le processus correspondant à cette connexion pour déconnecter l&#8217;utilisateur. <strong>Listons tous les processus</strong> correspondants à SSHD :</p>
<pre class="brush: bash; title: ; notranslate">server # ps aux | grep sshd
root     31115  0.0  0.0   8152  2472 ?        Ss   15:16   0:00 sshd: root@notty</pre>
<p>Dans notre cas il s&#8217;agit du PID 31115.<strong> Tuons le processus pour déconnecter l&#8217;utilisateur</strong> avec la commande <em>kill -9</em> :</p>
<pre class="brush: bash; title: ; notranslate">kill -9 31115</pre>
<h3 style="text-align: left;">Conclusion</h3>
<p>Ce système permet d&#8217;être<strong> averti en cas d&#8217;intrusion sur votre serveur</strong>, vous pouvez d&#8217;ailleurs utilisez des méchanismes d&#8217;avertissement par SMS si vous ne pouvez consulter vos mails en permanence.</p>
<p>Dans le cas où vous travaillez à plusieurs administrateurs sur un serveur, cela permet également d&#8217;avoir un historique de connexion.</p>
Vous devriez me suivre sur Twitter : <strong><a href="http://twitter.com/xhark">@xhark</a></strong>
<hr />
<p><small><a href="http://blogmotion.fr/systeme/notification-connexion-ssh-4246">Article original</a> écrit par Mr Xhark publié sur <a href="http://blogmotion.fr">Blogmotion</a> le 24/10/2009 |
<a href="http://blogmotion.fr/systeme/notification-connexion-ssh-4246#comments">11 commentaires</a> |
<br />Attention : l'intégralité de ce billet est protégée par la licence <a href="http://creativecommons.org/licenses/by-nc-sa/2.0/fr/">Creative Commons</a> 
</small></p>]]></content:encoded>
			<wfw:commentRss>http://blogmotion.fr/systeme/notification-connexion-ssh-4246/feed</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
	</channel>
</rss>

