/home/lenny/
폴더에 대한 읽기 및 쓰기 권한이 있고 셸이 없으며 SFTP를 통해서만 액세스할 수 있는 사용자 lenny를 만들려고 합니다 . 나는 다음을 수행하고 있습니다 :
useradd lenny
mkdir /home/lenny
usermod -d /home/lenny lenny
passwd lenny
chown lenny:lenny /home/lenny
chmod 755 /home/lenny
usermod -s /bin/false myuser
그런 다음 수정했습니다 /etc/ssh/sshd_config
.
Subsystem sftp internal-sftp`
Match User lenny
ChrootDirectory /home/lenny
ForceCommand internal-sftp
이제 이 작업을 수행하면 sftp lenny@server
실행을 통해 CHROOT를 쉽게 종료할 수 있고 모든 것이 표시됩니다!cd /
ls -la
왜 그런 겁니까? ? ? 이해가 안 돼요. 구성이 괜찮을 텐데, 아니면 제가 틀렸나요?
답변1
변경 후 sshd 서비스를 다시 시작하시겠습니까 /etc/ssh/sshd_config
?
sudo /etc/init.d/ssh restart
sftp 사용자(이 경우 /home/lenny
)의 chroot 디렉토리가 sftp 사용자가 아닌 루트 소유인지 확인하십시오. chmod 755
맞다.
또한 보안을 강화하기 위해 다음 두 줄을 추가합니다.
Match User lenny
ChrootDirectory /home/lenny
ForceCommand internal-sftp
X11Forwarding no
AllowTcpForwarding no
sshd 서비스를 다시 시작하면 필요한 chroot가 있어야 합니다.