OVH Cloud OVH Cloud

conf reseau

5 réponses
Avatar
Guillaume ALLEON
J'ai une machine possedant deux cartes eth, l'une d'elle est connectée
une machine dite publique, l'autre est connectée à un réseau local en
192.168.0.x.

De ma machine dite publique, je ne souhaite pas voir du tout la machine
dite locale par contre je souhaiterais que ma machine locale puisse
faire *uniquement* un scp directement sur la machine publique.

ce doit être possible en utilisant iptables. Quelqu'un peut-il
m'indiquer comment ?

Merci
Guillaume

5 réponses

Avatar
Nicolas George
Guillaume ALLEON wrote in message
<42f3cbd0$0$29950$:
De ma machine dite publique, je ne souhaite pas voir du tout la machine
dite locale par contre je souhaiterais que ma machine locale puisse
faire *uniquement* un scp directement sur la machine publique.


Dit comme ça, ce n'est pas possible : pour pouvoir faire du scp de A à B, il
faut que A puisse contacter B, donc que B puisse répondre à A, et donc que B
puisse « voir » A. À partir du niveau TCP, une liaison purement asymétrique
n'est tout simplement pas possible. Et en UDP, les protocoles de ce genre ne
seraient pas très pratiques : aucun retour pour signaler le succès ou
l'erreur.

Avatar
Pascal
Salut,

J'ai une machine possedant deux cartes eth, l'une d'elle est connectée
une machine dite publique, l'autre est connectée à un réseau local en
192.168.0.x.

De ma machine dite publique, je ne souhaite pas voir du tout la machine
dite locale par contre je souhaiterais que ma machine locale puisse
faire *uniquement* un scp directement sur la machine publique.


Que désignes-tu par "machine locale" ? Est-ce la machine aux deux
interfaces ou une troisième machine située sur le réseau local ?

Avatar
Guillaume ALLEON
Salut,


J'ai une machine possedant deux cartes eth, l'une d'elle est connectée
une machine dite publique, l'autre est connectée à un réseau local en
192.168.0.x.

De ma machine dite publique, je ne souhaite pas voir du tout la
machine dite locale par contre je souhaiterais que ma machine locale
puisse
faire *uniquement* un scp directement sur la machine publique.



Que désignes-tu par "machine locale" ? Est-ce la machine aux deux
interfaces ou une troisième machine située sur le réseau local ?


| |
|A|-192.168.3.1------192.168.3.2-|B|
| |-192.168.0.1-----192.168.0.2-|C|

Ca pourrait ressembler à cela.
En fait B est la frontale d'un cluster, les machines (dites noeuds)
en 192.168.0.x ne sont en principe pas vues de l'exterieur (machines
de type A)
Les jobs sont managés par un outil openPBS. Cet outil permet à A de
soumettre un job à B, ce job sera mis dans une queue puis exécuté par
une machine C. Quand C a terminé il doit renvoyé les résultats à la
machine A. PBS essaie de faire un scp vers A (qu'il ne voit pas) sauf
à faire qqch. Le quoi est précisement la question posée !

J'avais pensé sur C changer le scp en:
scp file B:/tmp
ssh B 'scp /tmp/file :/home/uid/'

mais il doit y avoir plus élégant à coup de iptables ou autre ?


Avatar
Guillaume ALLEON
Guillaume ALLEON wrote in message
<42f3cbd0$0$29950$:

De ma machine dite publique, je ne souhaite pas voir du tout la machine
dite locale par contre je souhaiterais que ma machine locale puisse
faire *uniquement* un scp directement sur la machine publique.



Dit comme ça, ce n'est pas possible : pour pouvoir faire du scp de A à B, il
faut que A puisse contacter B, donc que B puisse répondre à A, et donc que B
puisse « voir » A. À partir du niveau TCP, une liaison purement asymétrique
n'est tout simplement pas possible. Et en UDP, les protocoles de ce genre ne
seraient pas très pratiques : aucun retour pour signaler le succès ou
l'erreur.


OK, mais alors pour ne pas complètement dénaturer le principe de la conf
(qui soit dit en passant est celle d'un cluster de calcul : le frontal
isolant les noeuds de *l'extérieur*). Comment puis je autoriser B à ne
répondre qu'à une requete scp de A pour signaler le succès ou l'erreur
et donc
en particulier à ne pas autoriser l'opération symétrique ssh de B vers A


Avatar
Nicolas George
Guillaume ALLEON wrote in message
<42f458fd$0$17102$:
Comment puis je autoriser B à ne
répondre qu'à une requete scp de A pour signaler le succès ou l'erreur
et donc en particulier à ne pas autoriser l'opération symétrique ssh de B
vers A


Ça, c'est facile : l'_établissement_ d'une connexion TCP est asymétrique :
il suffit de rejeter les paquets SYN, ceux qui initient la connexion, dans
un sens et pas dans l'autre. Cf. les nombreuses docs d'iptables pour les
détails de syntaxe.