Anda ingin membuat mekanisme transfer file dari user ke server dan dari server ke user dengan aman. FTP bukanlah jawaban, karena saat sesi FTP password dikirim dalam format plain text (mudah di lihat oleh pihak ketiga). SCP/SFTP adalah jawaban untuk masalah ini.
Tapi sekarang timbul masalah baru. Jika Anda membolehkan akses scp melalui ssh, user bisa melakukan banyak hal di server, walaupun tentunya dengan priviledge terbatas.
Solusi terbaik untuk masalah ini adalah dengan membatasi ruang gerak user, jadi user hanya boleh melakukan scp, tapi tidak bisa melakukan remote shell. Caranya, instal shell scponly. Sebuah shell yang dirancang agar user bisa membaca dan menulis berkas via ssh, tapi tidak bisa melakukan aktifitas remote login.
Di ubuntu, Anda bisa menginstal dari repo.
sudo apt-get install scponly
Setelah itu, Anda tinggal mengubah shell untuk user yang ingin dibatasi hak aksesnya. Ubah shell user tersebut menjadi /usr/bin/scponly
.
Cara termudah adalah dengan chsh
.
sudo chsh -s /usr/bin/scponly nama-user-yg-mau-diganti-shell-nya