<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="fr">
	<id>https://lea-linux.org/docs/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Yoho</id>
	<title>Lea Linux - Contributions [fr]</title>
	<link rel="self" type="application/atom+xml" href="https://lea-linux.org/docs/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Yoho"/>
	<link rel="alternate" type="text/html" href="https://lea-linux.org/documentations/Sp%C3%A9cial:Contributions/Yoho"/>
	<updated>2026-04-13T19:47:36Z</updated>
	<subtitle>Contributions</subtitle>
	<generator>MediaWiki 1.40.1</generator>
	<entry>
		<id>https://lea-linux.org/docs/index.php?title=Discussion:Tunnels_ethernet_avec_OpenSSH&amp;diff=12437</id>
		<title>Discussion:Tunnels ethernet avec OpenSSH</title>
		<link rel="alternate" type="text/html" href="https://lea-linux.org/docs/index.php?title=Discussion:Tunnels_ethernet_avec_OpenSSH&amp;diff=12437"/>
		<updated>2006-04-16T19:30:53Z</updated>

		<summary type="html">&lt;p&gt;Yoho : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;C&#039;est un superbe article et j&#039;ai cherché longtemps comment utiliser cette option de ssh pour dialoguer entre mon PC au boulot et mon PC à la maison ! J&#039;ai juste trouvé la fin un peu imprécise (manquait l&#039;adresse pointopoint pour que linux configure les routes automatiquement) et j&#039;ai rajouté une petite section sur shorewall. Re-bravo et merci pour cette page ! :)&lt;/div&gt;</summary>
		<author><name>Yoho</name></author>
	</entry>
	<entry>
		<id>https://lea-linux.org/docs/index.php?title=Tunnels_ethernet_avec_OpenSSH&amp;diff=12436</id>
		<title>Tunnels ethernet avec OpenSSH</title>
		<link rel="alternate" type="text/html" href="https://lea-linux.org/docs/index.php?title=Tunnels_ethernet_avec_OpenSSH&amp;diff=12436"/>
		<updated>2006-04-16T19:27:47Z</updated>

		<summary type="html">&lt;p&gt;Yoho : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Catégorie:Réseau]][[Catégorie:Sécurité]]&lt;br /&gt;
Depuis la version 4.3 de Openssh, l&#039;option pour faire des tunnels ip a été ajoutée, mais la documentation sur internet est plutôt rare sur le sujet.&lt;br /&gt;
&lt;br /&gt;
Avant tout, il faut vérifier la version d&#039;openssh sur le serveur et le client.&lt;br /&gt;
&amp;lt;code multi&amp;gt;&lt;br /&gt;
~ $ rpm -q openssh&lt;br /&gt;
openssh-4.3p1-3mdk&lt;br /&gt;
~ $ ssh sisay rpm -q openssh&lt;br /&gt;
openssh-4.3p1-0.1.20060mdk&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L&#039;exemple ici a été fait à partir de 2 mandriva et 1 FreeBSD 6, mais ça doit marcher sans modification&lt;br /&gt;
sur un autre linux ou *bsd.&lt;br /&gt;
&lt;br /&gt;
OpenSSH n&#039;a pas encore importé dans le système de base de FreeBSD, néanmoins la version 4.3p2 est disponible via le système des ports.&lt;br /&gt;
Pour l&#039;installer:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;cd /usr/ports/security/openssh-portable/ &amp;amp;&amp;amp; make install clean &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Attention, si vous n&#039;utilisez pas l&#039;option pour remplacer la version OpenSSH de base, il vous faudra préfixer toutes les commandes ssh par le prefix /usr/local.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&#039;abord, il faut les droits root sur les 2 machines. En effet, il y a quelques opérations à faire, aussi bien au niveau de la configuration que du réseau.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Sur le serveur ==&lt;br /&gt;
&lt;br /&gt;
La première chose à faire est de dire à openssh d&#039;autoriser les tunnels, en rajoutant cette directive :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;PermitTunnel yes&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
dans /etc/ssh/sshd_config.&lt;br /&gt;
&lt;br /&gt;
Il faut aussi retirer la séparation des priviléges, ou jouer sur les permissions de /dev/tun  .&lt;br /&gt;
J&#039;ai pris la facilité pour le moment, j&#039;ai rajouté&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;UsePrivilegeSeparation no&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Une autre solution est de donner les permissions en lecture écriture à un groupe particulier&lt;br /&gt;
sur /dev/tun, ce qui est bien plus simple et sûr.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;chmod :mongroupe /dev/tun&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
et bien sur, être dans le groupe en question.&lt;br /&gt;
&lt;br /&gt;
Il faut ensuite charger le module tun :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;modprobe tun&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
et le rajouter dans /etc/modprobe.preload&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;echo tun &amp;gt;&amp;gt; /etc/modprobe.preload&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
pour le charger au prochain démarrage.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Sur le client ==&lt;br /&gt;
&lt;br /&gt;
Il faut simplement les droits sur /dev/tun, donc soit tourner en root, ou avoir la permission&lt;br /&gt;
d&#039;écrire sur /dev/tun, comme plus haut, puis faire ( sisay etant le serveur ) :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;ssh -w any:any sisay&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vous pouvez jeter une oeil sur les options -f et -N pour ne pas lancer de shell sur la machine distante. Et bien sur, les options habituelles marchent encore ( clé, tunnel, master/slave ).&lt;br /&gt;
&lt;br /&gt;
Puis, en root, vous pourrez changer l&#039;ip de la nouvelle interface tun0 sur le serveur&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;ifconfig tun0 10.0.0.1 pointopoint 10.0.0.2&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
sous FreeBSD:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;ifconfig tun100 inet 10.0.0.1 10.0.0.2 netmask 255.255.255.255&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
et faire pareil sur le client :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;ifconfig tun0 10.0.0.2 pointopoint 10.0.0.1&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
sous FreeBSD:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;ifconfig tun100 inet 10.0.0.2 10.0.0.1 netmask 255.255.255.255&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Et finalement, vous pouvez maintenant tester le ping depuis le client :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;ping 10.0.0.1&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le reste, c&#039;est de la configuration normale pour les interfaces. Vous pouvez rajouter des routes, un firewall, n&#039;importe quoi.&lt;br /&gt;
&lt;br /&gt;
Néanmoins, il faut savoir que les connexions tcp par dessus tcp ( comme c&#039;est le cas avec ssh ) sont déconseillées, de par la nature de tcp ( http://docs.mandragor.org/files/Misc/GLFM/lm31/TCP_over_TCP_mauvaise_iD.html ).&lt;br /&gt;
&lt;br /&gt;
== Configuration du firewall ==&lt;br /&gt;
&lt;br /&gt;
Si vous disposez d&#039;un firewall activé sur une ou sur les deux machines, il vous faut autoriser les connexions dans les deux sens. Pour cela, si vos utilisez shorewall, il vous suffit de rajouter cette ligne dans le fichier &amp;quot;interfaces&amp;quot; (/etc/shorewall/interfaces) : &lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;loc tun0 detect&amp;lt;/code&amp;gt;&lt;/div&gt;</summary>
		<author><name>Yoho</name></author>
	</entry>
	<entry>
		<id>https://lea-linux.org/docs/index.php?title=Tunnels_ethernet_avec_OpenSSH&amp;diff=12435</id>
		<title>Tunnels ethernet avec OpenSSH</title>
		<link rel="alternate" type="text/html" href="https://lea-linux.org/docs/index.php?title=Tunnels_ethernet_avec_OpenSSH&amp;diff=12435"/>
		<updated>2006-04-16T19:25:29Z</updated>

		<summary type="html">&lt;p&gt;Yoho : Configuration du firewall&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Catégorie:Réseau]][[Catégorie:Sécurité]]&lt;br /&gt;
Depuis la version 4.3 de Openssh, l&#039;option pour faire des tunnels ip a été ajoutée, mais la documentation sur internet est plutôt rare sur le sujet.&lt;br /&gt;
&lt;br /&gt;
Avant tout, il faut vérifier la version d&#039;openssh sur le serveur et le client.&lt;br /&gt;
&amp;lt;code multi&amp;gt;&lt;br /&gt;
~ $ rpm -q openssh&lt;br /&gt;
openssh-4.3p1-3mdk&lt;br /&gt;
~ $ ssh sisay rpm -q openssh&lt;br /&gt;
openssh-4.3p1-0.1.20060mdk&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L&#039;exemple ici a été fait à partir de 2 mandriva et 1 FreeBSD 6, mais ça doit marcher sans modification&lt;br /&gt;
sur un autre linux ou *bsd.&lt;br /&gt;
&lt;br /&gt;
OpenSSH n&#039;a pas encore importé dans le système de base de FreeBSD, néanmoins la version 4.3p2 est disponible via le système des ports.&lt;br /&gt;
Pour l&#039;installer:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;cd /usr/ports/security/openssh-portable/ &amp;amp;&amp;amp; make install clean &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Attention, si vous n&#039;utilisez pas l&#039;option pour remplacer la version OpenSSH de base, il vous faudra préfixer toutes les commandes ssh par le prefix /usr/local.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&#039;abord, il faut les droits root sur les 2 machines. En effet, il y a quelques opérations à faire, aussi bien au niveau de la configuration que du réseau.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Sur le serveur ==&lt;br /&gt;
&lt;br /&gt;
La première chose à faire est de dire à openssh d&#039;autoriser les tunnels, en rajoutant cette directive :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;PermitTunnel yes&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
dans /etc/ssh/sshd_config.&lt;br /&gt;
&lt;br /&gt;
Il faut aussi retirer la séparation des priviléges, ou jouer sur les permissions de /dev/tun  .&lt;br /&gt;
J&#039;ai pris la facilité pour le moment, j&#039;ai rajouté&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;UsePrivilegeSeparation no&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Une autre solution est de donner les permissions en lecture écriture à un groupe particulier&lt;br /&gt;
sur /dev/tun, ce qui est bien plus simple et sûr.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;chmod :mongroupe /dev/tun&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
et bien sur, être dans le groupe en question.&lt;br /&gt;
&lt;br /&gt;
Il faut ensuite charger le module tun :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;modprobe tun&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
et le rajouter dans /etc/modprobe.preload&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;echo tun &amp;gt;&amp;gt; /etc/modprobe.preload&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
pour le charger au prochain démarrage.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Sur le client ==&lt;br /&gt;
&lt;br /&gt;
Il faut simplement les droits sur /dev/tun, donc soit tourner en root, ou avoir la permission&lt;br /&gt;
d&#039;écrire sur /dev/tun, comme plus haut, puis faire ( sisay etant le serveur ) :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;ssh -w any:any sisay&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vous pouvez jeter une oeil sur les options -f et -N pour ne pas lancer de shell sur la machine distante. Et bien sur, les options habituelles marchent encore ( clé, tunnel, master/slave ).&lt;br /&gt;
&lt;br /&gt;
Puis, en root, vous pourrez changer l&#039;ip de la nouvelle interface tun0 sur le serveur&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;ifconfig tun0 10.0.0.1&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
sous FreeBSD:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;ifconfig tun100 inet 10.0.0.1 10.0.0.2 netmask 255.255.255.255&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
et faire pareil sur le client :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;ifconfig tun0 10.0.0.2&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
sous FreeBSD:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;ifconfig tun100 inet 10.0.0.2 10.0.0.1 netmask 255.255.255.255&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Et finalement, vous pouvez maintenant tester le ping depuis le client :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;ping 10.0.0.1&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le reste, c&#039;est de la configuration normale pour les interfaces. Vous pouvez rajouter des routes, un firewall, n&#039;importe quoi.&lt;br /&gt;
&lt;br /&gt;
Néanmoins, il faut savoir que les connexions tcp par dessus tcp ( comme c&#039;est le cas avec ssh ) sont déconseillées, de par la nature de tcp ( http://docs.mandragor.org/files/Misc/GLFM/lm31/TCP_over_TCP_mauvaise_iD.html ).&lt;br /&gt;
&lt;br /&gt;
== Configuration du firewall ==&lt;br /&gt;
&lt;br /&gt;
Si vous disposez d&#039;un firewall activé sur une ou sur les deux machines, il vous faut autoriser les connexions dans les deux sens. Pour cela, si vos utilisez shorewall, il vous suffit de rajouter cette ligne dans le fichier &amp;quot;interfaces&amp;quot; (/etc/shorewall/interfaces) : &lt;br /&gt;
&lt;br /&gt;
loc tun0 detect&lt;/div&gt;</summary>
		<author><name>Yoho</name></author>
	</entry>
</feed>