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.