• Aucun résultat trouvé

Installation d’un client FTP (exemple gFTP)

N/A
N/A
Protected

Academic year: 2022

Partager "Installation d’un client FTP (exemple gFTP) "

Copied!
6
0
0

Texte intégral

(1)

NOM : Prénom :

TP Administration - FTP

Installation d’un serveur FTP (exemple ProFTP)

Sur Ubuntu/Debian : apt-get install proftpd

Configuration : lancer proftp en inetd ou indépendamment (standalone) -->

indépendamment

Messages :

- création de l'utilisateur système ftp et son répertoire personnel /home/ftp - fichier de configuration dans /etc/proftpd.conf et doc dans

/usr/share/doc/proftpd/

Tests

Pour démarrer, stopper, mettre à jour la configuration : /etc/init.d/proftpd start|stop|reload

Examen des processus : ps aux | grep pro

Examen des ports : nmap localhost --> écoute sur le port 21 Pour vérifier la syntaxe de la configuration : proftpd -t

Documentation : Documentation sur http://www.proftpd.org/lists.html

Installation d’un client FTP (exemple gFTP)

Installation d'un client sur Ubuntu/Debian : apt-get install gftp

Une nouvelle entrée est créée dans le menu Applications -> Internet

Installation d’un client ftp sous Windows : il en existe plusieurs par exemple Filezilla client (à télécharger sur le net)

Tests de transferts

1. Pour un fonctionnement de base, il n'y a rien à faire !

Par défaut, le serveur utilise les comptes utilisateurs locaux dont les données sont stockées dans /etc/passwd et /etc/shadow. Un utilisateur possédant un compte sur le système peut donc s'authentifier avec ce compte à partir d'un client ftp

quelconque

2. Connexion authentifiée A partir d'une station Linux ou Windows, lancer un client ftp graphique (par exemple gftp) avec le compte stage (mot de passe : stage) (si on préfère le client ftp d'origine, en mode commande avec le client ftp : ftp ip) Constatez que la connexion comme root est refusée.

(2)

Effectuer une série de transferts dans et depuis votre répertoire personnel /home/stage (ou "vos documents")

En particulier, effectuer une mise en ligne de votre site web personnel (c'est-à-dire dans public_html). Vérifier par connexion http (ajouter des droits si nécessaire avec le client ftp).

Vérifiez que l'utilisateur stage peut parcourir toute l'arborescence et transférer des fichiers conformément à l'application des droits système classiques r-w-x

4. Suivi des connexions

La commande ftpwho donne la liste des utilisateurs connectés

La commande ftptop permet de connaitre en temps réel les machines connectées 5. Examen des logs

Examiner le fichier de log du serveur /var/log/xferlog (pour des détails voir man xferlog.

La distinction du sens de transfert est effectuée par les indications suivantes : o outgoing , i incoming , d deleted

On distingue aussi le mode d'accès (a anonymous / r authentifié)

La commande ftpstats (voir man ftpstats) fournit un rapport statistiques à partir de ce fichier.

Paramétrage du système

Commencer prudemment par faire une copie de sauvegarde du fichier de configuration /etc/proftpd.conf

Il apparait absolument nécessaire de parfaire le paramétrage actuel du serveur.

Les clients authentifiés peuvent se balader partout, en remontant jusqu'à la racine du système de fichier ! et ils peuvent ainsi pratiquement télécharger tout ce qui peut se lire.

Pour limiter l'accès des clients du serveur à leur répertoire personnel, ajouter la ligne :

DefaultRoot ~

Le symbole ~ indique le répertoire utilisateur. Chaque utilisateur aura alors accès seulement à son répertoire personnel vu comme une racine fictive du système de fichiers

Ne pas oublier de relancer le service : /etc/init.d/proftpd reload. Vérifier.

Remarque : dans un contexte d'hébergement de sites personnels (cf TP apache2), on peut limiter l'accès (et donc la mise en ligne de fichiers) aux sous-répertoires public_html. Pour cela :

DefaultRoot "~/public_html"

(3)

Pour empêcher l'accès au serveur à des utilisateurs qui possèdent un compte, on en dresse explicitement la liste dans le fichier /etc/ftpusers. Tester.

Accès en anonymous

On souhaite permettre le téléchargement de ressources, dans un répertoire dédié à celà pour des utilisateurs "anonymes" (sans exigence d'authentification)

Il faut créer la section anonymous pour que les clients puissent se connecter comme anonymous sans authentification, en fait au nom de l'utilisateur ftp. Ce compte a été créé par le serveur et lui a attribué comme répertoire personnel : /home/ftp, sans possibilité de se loguer (pas de shell). Pour vérifier, voir /etc/passwd

L'utilisateur anonymous est défini comme un alias du compte ftp, on limitera à 10 connexions maximum simultanées,

Voici une configuration de base, permettant le téléchargement à partir du rép.

/var/ftp, et les dépots sans droit de lecture (uploads) dans /var/ftp/depot

<Anonymous ~ftp>

User ftp

Group nogroup

# pour que anonymous soit considéré comme un alias de ftp

UserAlias anonymous ftp

MaxClients 10 "désolé, au maximum %m connexions !"

# pas de shell

RequireValidShell off

# sans mot de passe

AnonRequirePassword off

# PAS de droit d'écriture en général

<Directory /home/ftp>

<Limit WRITE>

DenyAll

</Limit>

</Directory>

# le sous-rép. depot est en écriture seule

<Directory /home/ftp/depot>

<Limit READ>

DenyAll

</Limit>

<Limit STOR>

AllowAll

</Limit>

</Directory>

</Anonymous>

Manipulation

(4)

2. Vérifier l'existence du compte ftp

3. Essai de connexion anonymous : quel est le répertoire racine alors accessible ? peut-on y écrire ?

4. Observer les propriétés et les permissions du sous-rép /home/ftp.

Créer le sous-rép. /home/ftp/depot avec les mêmes permissions que sur /home/ftp.

5. Tester en anonymous le dépot de document : dans /var/ftp puis dans ses 2 sous-rep.

6. Quelqu'un (anonyme ou authentifié) peut-il récupérer un tel document déposé ?

7. Alors qui va récupérer ces documents ?

Créer un compte admin/admin (Admin du FTP), qui appartienne au groupe primaire ftp, et dont le rép. personnel soit /home/ftp.

8. Ouvrir une session FTP comme admin et tester ses prérogatives

(5)

ANNEXE

Si l’on veut automatiser l’ouverture d’une connexion FTP et faire le transfert ou bien la réception d’un fichier ou dossier sur Windows :

On va créer pour cela deux fichier connectFTP.cmd et test.txt connectFTP.cmd

cls

::On met un titre au shell

@title Envoie le contenu d un repertoire sur un dossier FTP. Ecrase les fichiers déja existants si des noms sont concordants

::Supprimer les retours écran

@echo off

::#### VARIABLES####

ftp -s:test.txt :FIN

::On quitte test.txt

open $HOST

$USER

$PASSWORD ascii

prompt off

mput C:\monfichier or mget *.pdf

(6)

close quit

Si l’on veut automatiser l’ouverture d’une connexion FTP et faire le transfert ou bien la réception d’un fichier ou dossier sur LINUX :

On va créer un seul fichier connectFTP.sh ftp -i -n $HOST << EOF

quote USER $USER quote PASS $PASSWD get monfichier pwd

quit EOF

ftp -n << EOF open "$HOST"

quote USER $USER quote PASS $PASSWD

get monfichier #or put "$1" avec $1 le param à transfèrer quit

EOF

Références

Documents relatifs

DANS LA MESURE MAXIMALE PERMISE PAR LA LOI APPLICABLE DANS VOTRE JURIDICTION, EN AUCUN CAS BLACKBERRY SERA RESPONSABLE POUR TOUT TYPE DE DOMMAGES LIÉS À CETTE DOCUMENTATION OU

Avec Horizon Client, vous pouvez utiliser un fichier de configuration sur le système client pour spécifier quels périphériques USB peuvent être redirigés vers un poste de travail

A new connection is used for each transfer; to avoid running afoul of TCP’s TIMEWAIT state, the client picks a new port number each time and sends a PORT command announcing

En effet si la tâche s’arrête au milieu d’une communication, cela peut être préjudiciable (pour un download par exemple, la tâche remplit son tampon, mais le thread s’arrête,

Le portable2 fonctionne sous Windows XP ainsi il faudra installer la version client pour Windows que vous trouverez sur le site officiel d'openVPN

Configurer le serveur vsFTPd (en mode standalone) afin qu’il n’accepte que les connexions anonymes chrootées et en lecture seule. Il vous faudra l’indiquer dans la

NETCA peut être utilisé pour une configuration initiale de la base de données juste après l’installation de la base de données. OEM Oracle

n « Configuration système requise pour les clients Windows », page 7 n « Exigences matérielles des postes de travail en mode local », page 9 n « Exigences pour l'utilisation de