admin:services:ftp
Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
admin:services:ftp [2016/04/07 00:50] – brouillon install proftpd david | admin:services:ftp [2020/04/25 19:02] (Version actuelle) – zertrin | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
[[: | [[: | ||
- | Le serveur FTP de FedeRez se trouve sur [[admin: | + | Le serveur FTP de FedeRez se trouve sur [[admin: |
====== Infos de connexion ====== | ====== Infos de connexion ====== | ||
Ligne 8: | Ligne 8: | ||
| **Port** | | **Port** | ||
| **Protocole** | | **Protocole** | ||
- | | **Login** | + | | **Login** |
| **Mot de passe** | Celui du compte LDAP. Cf https:// | | **Mot de passe** | Celui du compte LDAP. Cf https:// | ||
Ligne 37: | Ligne 37: | ||
</ | </ | ||
+ | Niveau sécurité, tous les échanges doivent se faire de façon chiffrée (aussi bien pour le canal de contrôle que pour les données) et tous les utilisateurs ont les mêmes droits sur le serveurs (uid ftp, group ftp). | ||
====== Mise en place ====== | ====== Mise en place ====== | ||
- | Pour la mise en place d'un serveur '' | + | Pour la mise en place d'un serveur '' |
- | Le choix de '' | + | Le choix de '' |
On commence par installer les paquets nécessaires (la doc à consulter dans ''/ | On commence par installer les paquets nécessaires (la doc à consulter dans ''/ | ||
- | apt-get install proftpd | + | |
On crée un utilisateur système " | On crée un utilisateur système " | ||
- | useradd --system --home-dir /srv/ftp --no-create-home --shell / | + | |
Si l' | Si l' | ||
- | grep -E '^ftp:' /etc/passwd | + | getent passwd ftp |
- | qui doit renvoyer : | + | getent group ftp |
- | 50:ftp: | + | qui doivent |
+ | ftp: | ||
+ | ftp:x:999: | ||
Sinon, on adapte avec : | Sinon, on adapte avec : | ||
- | groupadd --system ftp | + | |
- | | + | usermod --gid ftp --home /srv/ftp --shell / |
On note ensuite l'uid et le gid de ftp : | On note ensuite l'uid et le gid de ftp : | ||
- | id ftp | + | |
+ | Dans notre cas, on a : '' | ||
- | On décommente dans ''/ | + | On modifie le fichier |
- | Include / | + | <file apache "/ |
- | Include / | + | ### Lignes à décommenter |
- | on change la ligne adapté pour avoir : | + | Include / |
- | DisplayLogin | + | Include / |
- | et on ajoute | + | |
- | AuthOrder mod_ldap.c | + | ### Ligne à modifier |
- | DefaultRoot /srv/ftp | + | DisplayLogin |
+ | |||
+ | ### Lignes à ajouter | ||
+ | # Autoriser uniquement les connexions depuis le LDAP | ||
+ | AuthOrder mod_ldap.c | ||
+ | # Chroot des utilisateurs dans /srv/ftp | ||
+ | DefaultRoot /srv/ftp | ||
+ | </ | ||
On crée ''/ | On crée ''/ | ||
- | <file "/ | + | < |
================================================= | ================================================= | ||
| | | | | | ||
Ligne 79: | Ligne 90: | ||
------- | ------- | ||
- | |||
En cas de questions, contacter admin@federez.net | En cas de questions, contacter admin@federez.net | ||
- | |||
</ | </ | ||
- | |||
- | Ainsi seuls les utilisateurs ayant un compte dans le LDAP pourront utiliser le FTP. | ||
On décommente dans ''/ | On décommente dans ''/ | ||
- | | + | <file apache "/ |
+ | | ||
+ | </ | ||
- | On modifie ''/ | + | On modifie ''/ |
- | <file "/ | + | < |
< | < | ||
- | TLSEngine | + | TLSEngine |
- | TLSLog | + | TLSLog |
- | TLSProtocol | + | TLSProtocol |
- | TLSRSACertificateFile | + | TLSRSACertificateFile |
- | TLSRSACertificateKeyFile | + | TLSRSACertificateKeyFile |
- | TLSOptions | + | TLSOptions |
- | TLSVerifyClient | + | TLSVerifyClient |
- | TLSRequired | + | TLSRequired |
</ | </ | ||
</ | </ | ||
- | chmod o-r ldap.conf vu qu'un mdp va y être stocké | + | Toutes les autres lignes devraient |
- | Modifier / | + | |
- | < | + | |
- | LDAPServer " | + | |
- | LDAPBindDN " | + | |
- | LDAPUsers " | + | |
- | LDAPSearchScope subtree | + | |
- | LDAPForceDefaultUID on | + | |
- | LDAPForceDefaultGID on | + | |
- | LDAPDefaultUID 129 | + | |
- | LDAPDefaultGID 999 | + | |
- | LDAPLog / | + | |
- | LDAPAuthBinds on | + | |
- | </ | + | |
- | Si rien ne marche, on pourra ajouter à / | + | On restreint les permissions sur '' |
- | Trace ldap:20 | + | chmod o-r / |
- | Trace *:10 | + | |
+ | On modifie ''/ | ||
+ | <file apache "/ | ||
+ | < | ||
+ | LDAPServer " | ||
+ | LDAPBindDN " | ||
+ | LDAPUsers " | ||
+ | LDAPSearchScope subtree | ||
+ | LDAPForceDefaultUID on | ||
+ | LDAPForceDefaultGID on | ||
+ | LDAPDefaultUID 129 | ||
+ | LDAPDefaultGID 999 | ||
+ | LDAPLog / | ||
+ | LDAPAuthBinds on | ||
+ | </ | ||
+ | </ | ||
+ | Toutes les autres lignes devraient être commentées. | ||
+ | On configure ensuite les accès aux fichiers en créant le fichier ''/ | ||
+ | <file apache / | ||
+ | < | ||
+ | <Limit READ WRITE DIR> | ||
+ | DenyAll | ||
+ | </ | ||
+ | </ | ||
+ | < | ||
+ | <Limit READ DIR> | ||
+ | AllowAll | ||
+ | </ | ||
+ | <Limit WRITE> | ||
+ | AllowGroup sudoldap | ||
+ | # | ||
+ | DenyAll | ||
+ | </ | ||
+ | </ | ||
+ | < | ||
+ | <Limit WRITE> | ||
+ | AllowAll | ||
+ | </ | ||
+ | </ | ||
+ | </ | ||
- | On relance le service : | + | Enfin, on relance le service : |
- | systemctl restart proftpd.service | + | systemctl restart proftpd.service |
+ | En cas de soucis, on pourra ajouter à ''/ | ||
+ | <file apache> | ||
+ | Trace ldap:10 # niveau entre 0 et 10 | ||
+ | Trace *:10 | ||
+ | </ | ||
+ | On s' | ||
+ | <file apache / | ||
+ | / | ||
+ | / | ||
+ | { | ||
+ | weekly | ||
+ | missingok | ||
+ | rotate 7 | ||
+ | compress | ||
+ | delaycompress | ||
+ | notifempty | ||
+ | create 640 root adm | ||
+ | sharedscripts | ||
+ | postrotate | ||
+ | # reload could be not sufficient for all logs, a restart is safer | ||
+ | invoke-rc.d proftpd restart 2>/ | ||
+ | endscript | ||
+ | } | ||
+ | </ |
admin/services/ftp.1459983048.txt.gz · Dernière modification : 2016/04/07 00:50 de david