Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

[gentoo-user-fr] vsftpd derrière un routeur

4 réponses
Avatar
Pascal Ronecker
Coucou,

maintenant que j'ai reglé mes pépins d'écran de veille, c'est mon ftp
qui m'en fait voir.
En fait, c'est à cause de mon routeur, un grand classique.

Les explications ci dessous risquent d'etre longuettes, mais la question
à la fin est assez simple :

c'est quoi la commande unix "host" sous linux ? je ne la trouve pas.

Je m'explique :

Pour l'anecdote : un client hors demon réseau local peut faire du ftp
depuis windows avec la comande "ftp", par contre tout soft un peu évolué
(filezilla, pour ne citer que lui) : NADA. Déjà, ça énerve :-/

Après analyse et tentatives multiples :

-> dans mon vsftpd.conf j'ai bien mis une plage de ports pour le mode
passif, avec cette plage correctement autorisée dans la config du
routeur ==> ça c'est bon.

-> filezilla recevait come adresse de canal de transfert mon ip LOCALE
(192.xx.xx.xx)

-> Pour que ca marche je DOIS utiliser pasv_address="mon ip vue de
l'exterieur" = l'IP donnée par mon provider quoi.

Soit.

Mais pasv_address n'utilise pas de DNS, c'est IP en chiffres
obligatoire. Or : mon IP change, évidemment. Bon. Soit.

Reste une solution barbare : le script dans la crontab qui remet le
vstpd.conf à jour ?
(et encore : faudra ptet redémarrer xinetd à chauqe fois en plus aussi.
Au point ou on en est ...)


j'ai dégoté un tel script, mais il utilise la commande _host_ que je
n'ai pas. Il doit bie y avoir un équivalent non ??
un truc qui refile l'IP à partir du nom, en local en plus ?
(j'ai pas envie de torturer ifconfig à coup de grep, cut et autre)

Et si vous avez une idée plus simple : JE PRENDS :-))

Le script :

#!/bin/sh
#vsftpd.conf IP update
vsftpd_conf=/etc/vsftpd/vsftpd.conf
vsftpd_log=/var/log/vsftpd/vsftpd.log
#change to your domain name in next line
my_ip=`host mon.joli.dns.dyndns.org | cut -f4 -d" "`
vsftpd_ip=`grep pasv_address $vsftpd_conf | cut -f2 -d=`

if [ "$my_ip" != "$vsftpd_ip" ] ; then
( echo ",s/$vsftpd_ip/$my_ip/g" && echo w ) | ed - $vsftpd_conf
echo `date` "$vsftpd_conf updated with $my_ip IP address" >>
$vsftpd_log
fi

merci de m'avoir lu jusque là !!

--
gentoo-user-fr@gentoo.org mailing list

4 réponses

Avatar
Pascal Ronecker
Pascal Ronecker wrote:
Coucou,

maintenant que j'ai reglé mes pépins d'écran de veille, c'est mon ftp
qui m'en fait voir.
En fait, c'est à cause de mon routeur, un grand classique.

Les explications ci dessous risquent d'etre longuettes, mais la question
à la fin est assez simple :

c'est quoi la commande unix "host" sous linux ? je ne la trouve pas.

Je m'explique :

Pour l'anecdote : un client hors demon réseau local peut faire du ftp
depuis windows avec la comande "ftp", par contre tout soft un peu évolué
(filezilla, pour ne citer que lui) : NADA. Déjà, ça énerve :-/

Après analyse et tentatives multiples :

-> dans mon vsftpd.conf j'ai bien mis une plage de ports pour le mode
passif, avec cette plage correctement autorisée dans la config du
routeur ==> ça c'est bon.

-> filezilla recevait come adresse de canal de transfert mon ip LOCALE
(192.xx.xx.xx)

-> Pour que ca marche je DOIS utiliser pasv_address="mon ip vue de
l'exterieur" = l'IP donnée par mon provider quoi.

Soit.

Mais pasv_address n'utilise pas de DNS, c'est IP en chiffres
obligatoire. Or : mon IP change, évidemment. Bon. Soit.

Reste une solution barbare : le script dans la crontab qui remet le
vstpd.conf à jour ?
(et encore : faudra ptet redémarrer xinetd à chauqe fois en plus aussi.
Au point ou on en est ...)


j'ai dégoté un tel script, mais il utilise la commande _host_ que je
n'ai pas. Il doit bie y avoir un équivalent non ??
un truc qui refile l'IP à partir du nom, en local en plus ?
(j'ai pas envie de torturer ifconfig à coup de grep, cut et autre)

Et si vous avez une idée plus simple : JE PRENDS :-))

Le script :

#!/bin/sh
#vsftpd.conf IP update
vsftpd_conf=/etc/vsftpd/vsftpd.conf
vsftpd_log=/var/log/vsftpd/vsftpd.log
#change to your domain name in next line
my_ip=`host mon.joli.dns.dyndns.org | cut -f4 -d" "`
vsftpd_ip=`grep pasv_address $vsftpd_conf | cut -f2 -d=`

if [ "$my_ip" != "$vsftpd_ip" ] ; then
( echo ",s/$vsftpd_ip/$my_ip/g" && echo w ) | ed - $vsftpd_conf
echo `date` "$vsftpd_conf updated with $my_ip IP address" >>
$vsftpd_log
fi

merci de m'avoir lu jusque là !!

--
mailing list






Et je précise que j'ai bricolé un truc horrible :

ping -c 1 mon.joli.dns | grep PING |cut -d"(" -f2 |cut -d")" -f1

Vous ne pouvez pas me laisser utiliser une telle horreur :-)

HELP :-)
--
mailing list
Avatar
Ivan Havlicek
Pascal Ronecker a écrit :

maintenant que j'ai reglé mes pépins d'écran de veille, c'est mon ftp
qui m'en fait voir.
En fait, c'est à cause de mon routeur, un grand classique.

Les explications ci dessous risquent d'etre longuettes, mais la
question à la fin est assez simple :

c'est quoi la commande unix "host" sous linux ? je ne la trouve pas.



Pour la commande host :
# emerge -v net-dns/host

A+
--
Ivan
--
mailing list
Avatar
Pascal Ronecker
Ivan Havlicek wrote:
Pascal Ronecker a écrit :


maintenant que j'ai reglé mes pépins d'écran de veille, c'est mon ftp
qui m'en fait voir.
En fait, c'est à cause de mon routeur, un grand classique.

Les explications ci dessous risquent d'etre longuettes, mais la
question à la fin est assez simple :

c'est quoi la commande unix "host" sous linux ? je ne la trouve pas.




Pour la commande host :
# emerge -v net-dns/host

A+
--
Ivan
--
mailing list




Roh j'ai honte, mais comment je me suis encore loupé en cherchant ??!!

MERCI
--
mailing list
Avatar
Michel Paquet
Le problème des soft "évoluer" comme tu dit, c'est qu'ils utilise les
connextion passive plutot que active. Avec la simple commande ftp en
console, c'est le mode active qui est utilisé. L'info est demandé sur le
port 21, puis recu sur le port 20. En mode passive, c'est plus
compliqué, l'ouverture du port 21 et 20 ne suffit plus. Le démond FTP
recois une requête du client sur le port 21, génère une réponse vers le
client en lui disant d'utilisé le port X (compris entre 1025 et 65565)
généré à la volé.

Dans mon routeur (un box linux monté avec iptable), j'ai du laissé
sortir les nouvelles connexion compris entre 1025-65565 puis laissé
entré ceux déja établi sur 1025-65565 à la sorti. Une recherche sur
iptables pourrais t'éclairé beaucoup plus que mes simple explication car
moi même je fini par m'y perdre des fois...

Michel Paquet



Pascal Ronecker a écrit :

Ivan Havlicek wrote:

Pascal Ronecker a écrit :


maintenant que j'ai reglé mes pépins d'écran de veille, c'est mon ftp
qui m'en fait voir.
En fait, c'est à cause de mon routeur, un grand classique.

Les explications ci dessous risquent d'etre longuettes, mais la
question à la fin est assez simple :

c'est quoi la commande unix "host" sous linux ? je ne la trouve pas.





Pour la commande host :
# emerge -v net-dns/host

A+
--
Ivan
--
mailing list




Roh j'ai honte, mais comment je me suis encore loupé en cherchant ??!!

MERCI




--
mailing list