je me prends le choux avec pf et le ftp et je n'arrive toujours
pas à faire du ftp depuis ma passerelle OpenBSD 3.5 vers Internet.
Depuis le réseau interne cela fonctionne normalement.
Mon ip interne sur ma passerelle est disons 192.168.0.1
Mais quand je fais un
wget --bind-address=192.168.0.1 ftp://ftp.free.fr/...
depuis ma passerelle, cela ne fonctionne pas.
La connexion est faite en directe et natée mais ne passe pas
par ftp-proxy. Je ne comprends pas parceque ma config pf est la suivante:
nat on $ext_if from 192.168.0.0/24 to any -> ($ext_if:0)
rdr on $int_if proto tcp from 192.168.0.0/24 to any port 21 -> $loop_if
port 8081
J'ai inversé l'ordre et c'est pareil.
Je me suis dit que comme le paquet ne traversait pas l'interface interne
il n'était pas routé par rdr mais naté, j'ai
donc fait autrement. J'ai donc rajouté la règle suivante (avant les autres):
rdr on $ext_if proto tcp from 192.168.0.100 to any port 21 -> $loop_if
port 8081
Mais là non plus la connexion n'est pas routée vers ftp-proxy et se fait
par la nat directement.
La connexion est faite en directe et natée mais ne passe pas par ftp-proxy. Je ne comprends pas parceque ma config pf est la suivante:
nat on $ext_if from 192.168.0.0/24 to any -> ($ext_if:0) rdr on $int_if proto tcp from 192.168.0.0/24 to any port 21 -> $loop_if port 8081 ^^
C'est pas plutôt 8021 ?
-- Serge
Bengali
Serge Basterot wrote:
Salut,
'lut
La connexion est faite en directe et natée mais ne passe pas par ftp-proxy. Je ne comprends pas parceque ma config pf est la suivante:
nat on $ext_if from 192.168.0.0/24 to any -> ($ext_if:0) rdr on $int_if proto tcp from 192.168.0.0/24 to any port 21 -> $loop_if port 8081
^^ C'est pas plutôt 8021 ?
oui tu as raison c'est le 8021 dans la doc. Mais c'est pas ça
dans mon cas car le service ftp-proxy était configuré dans inetd sur le port 8081. Je l'ai changé pour être conforme mais c'est toujours pareil. Je crois que je n'arriverai jamais à faire du ftp depuis ma passerelle.
@+
Serge Basterot wrote:
Salut,
'lut
La connexion est faite en directe et natée mais ne passe pas
par ftp-proxy. Je ne comprends pas parceque ma config pf est la suivante:
nat on $ext_if from 192.168.0.0/24 to any -> ($ext_if:0)
rdr on $int_if proto tcp from 192.168.0.0/24 to any port 21 -> $loop_if
port 8081
^^
C'est pas plutôt 8021 ?
oui tu as raison c'est le 8021 dans la doc. Mais c'est pas ça
dans mon cas car le service ftp-proxy était configuré dans inetd
sur le port 8081. Je l'ai changé pour être conforme mais c'est toujours
pareil.
Je crois que je n'arriverai jamais à faire du ftp depuis ma
passerelle.
La connexion est faite en directe et natée mais ne passe pas par ftp-proxy. Je ne comprends pas parceque ma config pf est la suivante:
nat on $ext_if from 192.168.0.0/24 to any -> ($ext_if:0) rdr on $int_if proto tcp from 192.168.0.0/24 to any port 21 -> $loop_if port 8081
^^ C'est pas plutôt 8021 ?
oui tu as raison c'est le 8021 dans la doc. Mais c'est pas ça
dans mon cas car le service ftp-proxy était configuré dans inetd sur le port 8081. Je l'ai changé pour être conforme mais c'est toujours pareil. Je crois que je n'arriverai jamais à faire du ftp depuis ma passerelle.
@+
aanriot
Je crois que je n'arriverai jamais à faire du ftp depuis ma passerelle.
Tu fais bien la bonne redirection vers ftp-proxy sur ton interface interne, mais tes règles de rdr/nat ne sont pas suffisantes. Ce ne sont que des translations, et il te faut en entrée et en sortie de chaque interface des règles de filtrage (quatre au total); tu peux utiliser pour la NIC interne :
pass in quick on $int_if inet proto tcp from 192.168.0.0 to any port 8021 flags S/SFRA keep state
et afin que le tes paquets puissent ressortir vers le Web après le passage dans ftp-proxy :
pass out quick on $ext_if inet proto tcp from $ext_if to any user proxy flags S/SFRA keep
"user proxy" permet de ne pas ouvrir un pool de ports (ceux placés dans inetd.cond) mais juste ceux qui sont nécessaires à ftp-proxy.
A toi de faire pareil pour le sens retour et de prendre en considération les modes actif/passif.
Je crois que je n'arriverai jamais à faire du ftp depuis ma
passerelle.
Tu fais bien la bonne redirection vers ftp-proxy sur ton interface
interne, mais tes règles de rdr/nat ne sont pas suffisantes. Ce ne
sont que des translations, et il te faut en entrée et en sortie de
chaque interface des règles de filtrage (quatre au total); tu peux
utiliser pour la NIC interne :
pass in quick on $int_if inet proto tcp from 192.168.0.0 to any port
8021
flags S/SFRA keep state
et afin que le tes paquets puissent ressortir vers le Web après le
passage dans ftp-proxy :
pass out quick on $ext_if inet proto tcp from $ext_if to any user
proxy
flags S/SFRA keep
"user proxy" permet de ne pas ouvrir un pool de ports (ceux placés
dans inetd.cond) mais juste ceux qui sont nécessaires à ftp-proxy.
A toi de faire pareil pour le sens retour et de prendre en
considération les modes actif/passif.
Je crois que je n'arriverai jamais à faire du ftp depuis ma passerelle.
Tu fais bien la bonne redirection vers ftp-proxy sur ton interface interne, mais tes règles de rdr/nat ne sont pas suffisantes. Ce ne sont que des translations, et il te faut en entrée et en sortie de chaque interface des règles de filtrage (quatre au total); tu peux utiliser pour la NIC interne :
pass in quick on $int_if inet proto tcp from 192.168.0.0 to any port 8021 flags S/SFRA keep state
et afin que le tes paquets puissent ressortir vers le Web après le passage dans ftp-proxy :
pass out quick on $ext_if inet proto tcp from $ext_if to any user proxy flags S/SFRA keep
"user proxy" permet de ne pas ouvrir un pool de ports (ceux placés dans inetd.cond) mais juste ceux qui sont nécessaires à ftp-proxy.
A toi de faire pareil pour le sens retour et de prendre en considération les modes actif/passif.