Mam wersję CentOs 6.4 z Digital Ocean i chciałbym z powodzeniem tworzyć użytkowników SFTP i uwięzić ich w katalogu domowym użytkownika chroot, ale obawiam się, że robię z tego bałagan.
Próbowałem wielu rzeczy, o wiele za dużo, aby je tutaj wymienić, ponieważ większość z nich jest prawdopodobnie nieprawidłowa lub nie ma większego sensu, ale uważam, że powinien to być prawidłowy proces i próbowałem: -
Utwórz grupę dla sftp
: -
groupadd sftp
Utwórz użytkownika i ustaw jego katalog domowy: -
useradd -d /var/www/vhosts/domain.com dummyuser
Ustaw hasło dla użytkownika: -
passwd dummyuser
Zmień grupę użytkowników na „sftp”: -
usermod -g sftp dummyuser
Ustaw powłokę użytkownika na /bin/false
: -
usermod -s /bin/false dummyuser
Edytuj podsystem w sshd_config
( /etc/ssh/
): -
#Subsystem sftp /usr/lib/openssh/sftp-server
Subsystem sftp internal-sftp
Dodaj następujący tekst na dole sshd_config
pliku: -
Match group sftp
X11Forwarding no
ChrootDirectory %h
AllowTcpForwarding no
ForceCommand internal-sftp
Upewniam się, że wszystkie następujące katalogi to root:root
: -
/var
/var/www
/var/www/vhosts
/var/www/vhosts/domain.com
Jeśli następnie spróbuję zalogować się na serwerze za pomocą SFTP z użytkownikiem dummyuser
(w WinSCP), otrzymam następujące informacje:
Authentication log (see session log for details):
Using username "dummyuser".
Authentication failed.
Wszystko, co chcę osiągnąć, to więzienie użytkownika w jego katalogu domowym. Mam również skonfigurowane i skonfigurowane vsftpd. Użytkownicy mogliby się zalogować, ale mieliby dostęp do całego serwera - po prostu nie udało mi się w ogóle uruchomić więzienia.
Edytować
Zapomniałem wspomnieć, a następnie ponownie uruchomiłem sshd
również:
service sshd restart
Kiedy błąd pojawia się w WinSCP, ich strona pomocy na ten temat jest tutaj .
Wyniki dziennika
/var/log/secure
Rzeczywistą nazwę serwera zastąpiłem server_name
.
Apr 28 14:20:56 server_name sshd[9944]: Accepted password for dummyuser from 80.194.255.4 port 44402 ssh2
Apr 28 14:20:56 server_name sshd[9944]: pam_unix(sshd:session): session opened for user dummyuser by (uid=0)
Apr 28 14:20:56 server_name sshd[9946]: fatal: bad ownership or modes for chroot directory component "/var/www/vhosts/"
Apr 28 14:20:56 server_name sshd[9944]: pam_unix(sshd:session): session closed for user dummyuser
/var/log/secure
.
vhosts
jest root:root
.
sshd
? Co znajduje się w plikach dziennika na serwerze?