Je veux configurer l'utilisateur ftpuser en sftp pour un répertoire appartenant à Apache existant / var/www/webiste
Je l'ai ajouté en tant que nouvel utilisateur et créé / var/www/webiste son répertoire personnel,
useradd -md /var/www/website -s /bin/bash ftpuser
dans sshd_config:
Subsystem sftp internal-sftp
Match User ftpuser
ChrootDirectory /var/www/website
X11Forwarding no
AllowTcpForwarding no
ForceCommand internal-sftp
Le répertoire appartient maintenant à root, et dispose des autorisations acl pour www-data user:
# ls -ltr
drwxrwx---+ 5 root root 4096 Nov 8 2012 website
# getfacl website/
# file: website/
# owner: root
# group: root
user::rwx
user:www-data:rwx
group::rwx
group:www-data:rwx
Mais chaque fois que j'essaie de me connecter avec SFTP, j'obtiens les erreurs de débogage suivantes:
ftpuser@ftp_server's password:
debug3: packet_send2: adding 32 (len 80 padlen 16 extra_pad 64)
debug2: we sent a password packet, wait for reply
debug1: Authentication succeeded (password).
Authenticated to ftp_server ([ftp_server]:22).
debug2: fd 4 setting O_NONBLOCK
debug3: fd 5 is O_NONBLOCK
debug1: channel 0: new [client-session]
debug3: ssh_session2_open: channel_new: 0
debug2: channel 0: send open
debug1: Requesting [email protected]
debug1: Entering interactive session.
debug1: channel 0: free: client-session, nchannels 1
debug3: channel 0: status: The following connections are open:
#0 client-session (t3 r-1 i0/0 o0/0 fd 4/5 cc -1)
debug1: fd 0 clearing O_NONBLOCK
debug3: fd 1 is not O_NONBLOCK
Connection to 104.237.139.76 closed by remote Host.
Transferred: sent 2408, received 2020 bytes, in 0.0 seconds
Bytes per second: sent 627244.1, received 526176.5
debug1: Exit status -1
Couldn't read packet: Connection reset by peer
Des idées pour résoudre ce problème?
Modifier:
de / var/log/authz:
fatal: bad ownership or modes for chroot directory component "/var/www/"
L'utilisation de l'option ChrootDirectory
dans sshd_config
Nécessite une compréhension de base du texte écrit.
Ceci est un instantané de la page de manuel de sshd_config(5)
:
ChrootDirectory
Spécifie le chemin d'accès d'un répertoire à
chroot(2)
à après authentification. Tous les composants du nom de chemin doivent être des répertoires appartenant à la racine qui ne sont accessibles en écriture par aucun autre utilisateur ou groupe. Après le chroot,sshd(8)
change le répertoire de travail en répertoire personnel de l'utilisateur.
Voici votre journal des erreurs:
fatal: bad ownership or modes for chroot directory component "/var/www/"
Et lorsque vous en ajoutez un et un, vous comprendrez que non seulement /var/www/webiste
Doit appartenir à root, mais aussi les répertoires /var/www
Et /var
, Comme mentionné à maintes reprises ici. .