Installer un ftp anonyme
Maintenant que vous connaissez les principes théoriques du ftp, il est temps de passer à la pratique: activer le serveur ftp sous OS X.
Pour commencer, activez l'accès FTP dans les Préférences système, panneau Partage, onglet Services.
Ensuite nous allons commençer par le compte anonyme : il suffit de créer l'utilisateur ftp, inexistant par défaut sous OS X.
Pour ce faire, commençez par lancer l'application Gestionnaire NetInfo. Authentifiez vous et créez un nouveau répertoire dans le dossier users.
Vous pouvez maintenant créer les propriétés suivantes:
expire 0
uid 21
name ftp
passwd *
realname anonymous
_writers_picture ftp
change 0
shell /dev/null
home /Users/ftp
gid -21
Vous pouvez maintenant créer le groupe ftp: ajoutez un répertoire au dossier groups et entrez les prpriétés suivantes:
name ftp
passwd *
gid -21
Puis il ne reste qu'à créer le répertoire de connexion grâce aux trois commandes suivantes:
sudo mkdir /Users/ftp
sudo chown votrelogin:ftp /Users/ftp
sudo chmod 755 /Users/ftp
Ca y est, c'est fini ! Amusez vous bien...
Créer des comptes ftp
Nous en arrivons maintenant au point culminant de notre périple: la création de comptes ftp pour vos amis.
Pour la pratique, je ne saurais vous conseiller la lecture de l'article de Gunjin (de xrings bien sur) sur le sujet: tout y est clair et efficace.
Néanmoins précisons un peu la procédure automatisée par le script proposé par Gunjin: il suffit pour ajouter un compte FTP de créer un utilisateur grâce à l'utilitaire Gestionnaire NetInfo et de créer ensuite son répertoire de connexion (comme pour l'utilisateur anonyme en fait).
Les champs à renseigner dans NetInfo sont les suivants: name, passwd, home, shell, uid, gid.
Pour le mot de passe il est préférable d'utiliser l'outil en ligne de commande passwd (ou encore niutil) pour une question d'encodage du mot de passe.
Il reste encore à empêcher l'utilisateur de sortir de son répertoire de connexion: pour cela il suffit de l'ajouter au fichier /etc/ftpchroot comme je l'ai expliqué dans une news précédente.
Enfin vous pouvez refuser à l'utilisateur une connexion SSH en ajoutant la ligne suivante au fichier /etc/sshd_config:
DenyUsers user
Voilà, c'est tout pour l'instant...
Faire marche arrière
S'il vous prend l'envie subite de supprimer un compte FTP (pour une raison quelconque qui, après tout ne nous regarde pas) voire le compte anonyme, c'est possible et très rapide.
En effet il suffit de supprimer l'utilisateur dans Gestionnaire NetInfo, supprimer le répertoire de connexion de l'utilisateur et enfin supprimer l'utilisateur du fichier /etc/ftpchroot et /etc/sshd_config (ainsi que la commande DenyUsers associée) si vous l'y aviez ajouté.
Ces deux dernières manipulations sont inutiles pour le compte anonyme.
Enfin pour clore définitivement l'accès ftp à votre machine, désactivez simplement le partage correspondant dans le panneau Partage des Préférences Système.
Automatisation
Maintenant que vous savez à peu près tout faire à la main, il est temps de penser à l'automatisation des taches d'administration: il est tout de même un peu fastidieux de créer de nombreux comptes alors que l'ordinateur peut le faire pour nous...
Vous pouvez donc récupérer des scripts permettant de créer et de supprimer des comptes ftp sans vous soucier de rien.
Pour les récupérer, c'est par ici
Bien sûr vous serez tenus au courant de l'évolution de ces scripts...
Quelques ressources documentaires:
Configurer un ftp anonyme
Créer des comptes ftp
Se procurer un alias DNS
Les capacités serveur de OS X