Dans le monde Ubuntu, il semble que vous utilisiez toujours un serveur FTP ou jamais . Je suis peut-être le premier analyste réseau à avoir besoin de flasher une image Cisco, Checkpoint ou Nokia avec Ubuntu ... J'ai besoin d'un serveur FTP pendant peut-être 5 minutes, rien de plus.
Je recherche un serveur FTP simple et initié par l'utilisateur. Je comprends que cela devrait probablement fonctionner avec sudo. C'est bien - mais je veux le démarrer / l'arrêter comme un programme normal.
Sur la plate-forme Windows, de tels outils sont à la pelle - j'ai utilisé 3CDaemon pendant des années et récemment découvert CoreFTP. Les deux sont excellents. Vous configurez un utilisateur, pointez-le sur un répertoire, puis cliquez sur le bouton "Démarrer". Quelques minutes plus tard, vous avez généralement terminé et vous appuyez sur le bouton "Arrêter". Travail accompli.
De tels outils ne semblent pas exister sur Ubuntu. J'ai trouvé un projet Google Code qui crée assez bien une instance TFTP (en supposant qu'il fonctionne toujours - je ne l'ai pas utilisée depuis environ un an et Python a évolué), mais qu'en est-il de FTP? Quelque chose dehors là?
Réponses:
Avec pyftpdlib, vous pouvez obtenir un serveur FTP aussi simple qu'un un trois :
pip install --user pyftpdlib
python -m pyftpdlib
, ajoutez-w
si vous voulez aussi un accès en écriture.Vous avez maintenant un serveur FTP auquel vous pouvez vous connecter pour partager anonymement votre répertoire personnel. Ceci est plus destiné à tester le module, mais il fait ce qu’il dit sur l’étain.
Cette commande:
servira, sans privilèges root, sur le port 2121 et accordera un accès en écriture aux utilisateurs anonymes. Il utilisera également le répertoire du répertoire
FTP
de travail actuel à la place de votre domicile. Tapezpython ftpserver.py --help
pour obtenir des informations sur toutes les options.anonymous@localhost:2121/
Veuillez noter que ce logiciel est publié sous les termes de la licence MIT , ce qui signifie que vous pouvez faire ce que vous voulez, en gros. Lisez le texte de la licence, ce n’est que quelques lignes et connaissez vos droits.
À présent, ce script ne prend pas en charge les nom d'utilisateur et mot de passe dans le cadre de sa fonctionnalité autonome (pour des raisons de sécurité, j'imagine).
J'ai donc ajouté cette fonctionnalité:
Vous avez maintenant, en plus de toutes les options que j'ai mentionnées, les paramètres de ligne de commande
--username=USERNAME
et--password=PASSWORD
:Encore une fois, utilisez
--help
pour les voir tous.Cela devrait être aussi simple que possible.
J'ai aussi écrit un petit gui pour cela:
Téléchargez-le ici (mis à jour à la rév. 6)
Je suis désolé, il a 3999 lignes, mais il fera tout ce que l’original fait. Et je voulais tout garder dans un seul fichier. Lorsqu'il est démarré sans aucun paramètre (c'est-à-dire, exécutez-le et double-cliquez dessus, ou créez un programme de lancement pour celui-ci ), il lance un petit GUI pour vous permettre de configurer votre serveur. Vous pouvez toujours l'importer en tant que module python ou utiliser la ligne de commande ci-dessus, fu.
Problèmes connus:
Je ne me suis pas soucié de rien d'autre que du port 2121. Cela devrait être simple, rendre le port configurable nécessite une gestion d'erreur complexe que je ne veux pas que l'utilisateur s'embarrasse. 2121 devrait toujours fonctionner correctement.
Comme la ligne de commande, il ne vous avertira pas de l'utilisation d'une configuration non sécurisée. C'est-à-dire pas définir un mot de passe ou quelque chose comme ça.
EDIT: depuis l'API de
pyftpdlib
etftpserver.py
changé (et les liens de collerbin d'ubuntu ont disparu); la plupart des postes ci-dessus ne fonctionnent plus. Pour la version (2014) depyftpdlib
, utilisez ce script (ftpserver-cli.py
) pour obtenir le même résultat que ci-dessus:appeler avec:
la source
Vous pouvez utiliser pure-ftpd
Vous pouvez utiliser scp si vous avez un serveur ssh.
la source
postinst
script devait le lancer .)Pour ceux qui copient des fichiers depuis et vers des routeurs, vous pouvez essayer cet outil: tftpgui
Cela a fonctionné pour moi et est très facile à configurer. C'est aussi un script Python mais tftp au lieu de ftp. Tout ce que vous avez à faire est d’installer python-tk et télécharger le script
La seule chose à savoir est que Ubunutu utilise par défaut Phython2. La meilleure façon de démarrer le script est la suivante:
Vous pouvez ensuite le configurer dans l'interface graphique. Lorsque vous avez terminé, vous appuyez sur exit et c'est tout.
Bo
la source