Solusi 1:
Dimulai dengan OpenSSH versi 4.9 (tidak tersedia di centos 5.x tetapi fitur ChrootDirectory telah di-backport) memiliki internal-sftp
subsistem:
Subsystem sftp internal-sftp
Lalu blokir kegunaan lain:
Match group sftponly
ChrootDirectory /home/%u
X11Forwarding no
AllowTcpForwarding no
ForceCommand internal-sftp
Tambahkan pengguna Anda ke sftponly
kelompok. Anda harus mengubah direktori home pengguna menjadi /
karena chroot dan /home/user
harus dimiliki oleh root
. Saya juga akan menyetel /bin/false
sebagai shell pengguna.
Solusi 2:
Ada shell scponly apa ini. Itu bisa chroot juga.
Solusi 3:
Lihat rssh yang merupakan shell palsu yang mengizinkan sftp tetapi menolak ssh
Selengkapnya tentang RSSH
http://www.pizzashack.org/rssh/
RPM
http://pkgs.repoforge.org/rssh/
Anda dapat mengonfigurasi rssh untuk mengizinkan/menolak berbagai perilaku seperti sft, scp, dll.
Solusi 4:
Anda dapat memodifikasi /etc/passwd dan memberi pengguna itu shell palsu sehingga dia tidak dapat menggunakan ssh.