Saya memiliki komputer yang menjalankan SSH yang ingin saya beri teman saya akses, tetapi saya tidak ingin mereka menggunakan koneksi internet saya melalui tunneling SSH (walaupun saya ingin melakukannya sendiri). Apakah ada cara untuk memiliki log ketika terowongan SSH dibuat dan oleh yang mana (lokal) pengguna, atau, jika itu tidak mungkin, hanya memungkinkan beberapa pengguna untuk melakukannya?
13
Jawaban:
Jika teman-teman Anda dapat SSH ke komputer Anda, mereka menggunakan beberapa bandwidth Anda dan oleh karena itu tidak mungkin untuk sepenuhnya memblokir mereka akses ke koneksi internet Anda.
Meski begitu, salah satu solusinya adalah membatasi apa yang dapat dilakukan teman Anda dengan koneksi Anda. Anda dapat mengatur firewall yang membuat daftar putih IP teman Anda dan membuat daftar hitam segala hal lainnya. Dengan begitu, teman-teman Anda dapat SSH ke komputer Anda, tetapi dari sana, tidak akan dapat mencapai IP lain selain milik mereka.
Saya belum pernah memasang firewall khusus pengguna sendiri, tetapi saya yakin ini mungkin dicapai dengan IPTables . Juga, perlu diingat bahwa pengguna Anda masih bisa memakan banyak bandwidth Anda dengan mengunggah file besar di server Anda. Jika Anda secara khusus ingin mencegah hal ini, Anda harus membatasi bandwidth per pengguna .
sumber
Anda ingin memastikan / etc / ssh / sshd_config berisi
dan kemudian di akhir file put
Ini akan memungkinkan Anda dan hanya Anda untuk port-forward ke konten hati Anda, tetapi seperti kata João Anda tidak akan bisa mencegah mereka menjalankan program mereka sendiri kecuali Anda juga menonaktifkan akses shell.
sumber
Perhatikan bahwa saat Anda dapat menonaktifkan Penerusan TCP oleh sshd, Anda harus melangkah lebih jauh untuk membatasi aktivitas keluar pengguna Anda. Memberi mereka cangkang berarti memberi mereka banyak kekuatan.
Sebagai contoh, jika mereka dapat scp file ke server dan mengeksekusi file di / home, mereka hanya dapat mengunggah biner pppd, dan menggunakannya untuk menjalankan PPP melalui SSH. Jika Anda mengizinkan koneksi masuk mereka hanya dapat menjalankan
/usr/sbin/sshd -p 9999 -f special_sshd_config
dan menggunakan server Anda melalui sshd itu.Anda mungkin ingin melihat modul pemilik iptables (man iptables, cari pemilik) dan chroot jail, tetapi ini benar-benar sulit untuk dipecahkan tanpa merusak pengalaman shell mereka.
sumber
Satu-satunya pilihan yang saya miliki adalah menonaktifkan tunneling pada level sistem.
Edit / etc / ssh / sshd_config, dan ubah / tambahkan
Harap dicatat bahwa walaupun memiliki akses shell, tidak ada cara untuk mencegah pengguna menggunakan binari mereka sendiri untuk meneruskan koneksi.
sumber
Ini telah ditanyakan pada serverfault, juga /server/181660/how-do-i-log-ssh-port-forwards dan ada tambalan: http://blog.rootshell.be/2009/ 03/01 / terus-menerus-ssh-forwarding /
sumber
Iterasi pertama:
Nonaktifkan ssh penerusan untuk mereka. dalam ssh
Anda mengaktifkan IPSec untuk diri sendiri dan VPN ke server Anda. IPSec adalah tingkat jaringan sehingga tidak terpengaruh oleh pengaturan aplikasi SSH.
sumber