Apakah lebih aman menggunakan chroot jail, shell jail, atau kombinasi?

9

Seorang teman saya memiliki netbook Acer berbasis xandros, dan telah mencari untuk mendapatkan administrasi jarak jauh dan bantuan dari saya saat dia bepergian di seluruh dunia.
Saya telah membuat akun di netbook-nya untuk saya ssh, dan membuat skrip untuk membalik-ssh-tunnel dari netbook-nya ke server saya - ini memungkinkan saya menyelesaikan masalah dengan firewall dll di berbagai hostel dan hotel. Setelah dia masuk ke server saya, saya kemudian bisa ssh ke netbook-nya.

Saya punya skrip bash yang dijalankan sebagai cangkangnya ketika dia ssh'es ke server saya, yang hanya memberinya semacam layar 'harap tunggu', dan satu-satunya pilihan adalah keluar dari skrip, dan karenanya bisa di-boot dari server.

Pengguna yang saya buat untuknya di server saya adalah hak yang rendah, tetapi pasti ada beberapa exploit yang berarti dia akan memiliki akses ssh ke server saya.

Saya sedang mempertimbangkan juga menggunakan chroot jail, jadi jika dia lolos dia hanya akan memiliki akses ke direktori rumahnya.
Apakah ini ide yang bagus, dan adakah tip keamanan lain yang mungkin saya lewatkan untuk menjaga keamanan server saya, sementara masih memungkinkan saya untuk mengakses netbook-nya dari jarak jauh?

Untuk memperjelas, saya tidak berpikir dia akan mencoba melarikan diri dari penjara, atau chroot, tapi saya ingin tahu bagaimana saya bisa mencegah hal ini untuk berjaga-jaga.

Pembaruan:
Dan apakah Anda memiliki saran lain tentang bagaimana saya dapat mengakses netbook atau lapisan lain yang dapat saya tempatkan di antara pengguna dan perangkat keras saya?

Andy
sumber

Jawaban:

3

Sudahkah Anda mempertimbangkan untuk menyiapkan VNC atau aplikasi remote control lainnya pada port yang biasanya tidak difilter oleh firewall berdasarkan aturan?

Contoh konfigurasi ini akan memuat VNC (atau aplikasi serupa lainnya) pada notebook. Kemudian biarkan skrip sisi notebook Anda berjalan untuk menjangkau server Anda pada port tertentu yang tidak akan disaring oleh firewall untuk membuat jalur pengembalian Anda ke sistem. 443 mungkin adalah port terbaik untuk digunakan untuk ini, tetapi yang lain juga cocok. Kemudian dari sistem Anda, Anda hanya terhubung ke VNC baik secara langsung atau mereplikasi port pada server Anda ke nomor port lain dan hanya terhubung ke antarmuka pada port lokal dan pengalihan port akan menangani membawa Anda ke sistem lain di ujung jarak jauh.

Semoga ini membantu.

Axxmasterr
sumber
Terima kasih untuk sarannya. Saya tidak mempertimbangkan itu karena saya belum benar-benar melihat banyak klien vnc di linux yang membuat koneksi terbalik jelas di Linux. Apa kamu mengetahui sesuatu?
Andy
salah satu cara Anda bisa melakukan ini adalah dengan menggunakan program TCP / IP yang mampu membangun port satu arah. Mengotomatiskan ini dengan gaya telnet yang terhubung dari shell script akan sangat membantu. Sebagian besar implementasi telnet memungkinkan Anda menentukan port yang ingin Anda sambungkan.
Axxmasterr
2

Penjara chroot akan membantu, tetapi dengan eksploit yang membiarkan seseorang masuk ke dalam shell, mereka masih dapat melihat tabel proses dan semacamnya, dan menjalankan program, kemungkinan eksploitasi lebih lanjut. Jika Anda ingin benar - benar agresif dalam mengisolasi pengguna eksternal, ini semacam menggunakan howitzer pada semut, tetapi Anda dapat mengatur server pribadi virtual untuk seluruh mekanisme ssh tunnel. Kemudian yang terburuk yang bisa mereka lakukan adalah membuang VPS, kecuali kemampuan untuk keluar dari salah satunya, yang merupakan bar yang cukup tinggi.

kekacauan
sumber
Saya suka idenya, tapi ya, steam-roller untuk memecahkan kenari :) Kemudian lagi, jika saya menjalankan sesuatu yang sangat kecil seperti terminal-only puppy-linux sebagai server tidak akan sebesar steam-roller.
Andy
2

Saya penggemar strategi pertahanan mendalam yang baik dalam hal mengamankan sistem komputer, jadi saya akan merekomendasikan agar Anda menggunakan akun privilege rendah di sistem file chroot, dan meskipun itu bukan jaminan, lihat saja iPhone, itu melakukan kedua hal ini dan masih tidak membantu.

Bruce McLeod
sumber
2

Cara lain untuk menguliti hewan ini sekarang yang saya pikirkan adalah dengan mengarahkan lalu lintas sesi x di dalam terowongan SSH sebagai alternatif untuk menggunakan VNC. Anda sudah setengah jalan sekarang dengan pengaturan Anda saat ini.

Atur kemampuan X pada port tertentu secara lokal ke mesin itu, lalu teruskan port itu ke diri Anda sendiri melalui terowongan dan kemudian gandakan ke port di sisi Anda sehingga Anda dapat terhubung ke sesi di port lokal di server Anda.

Hal lain yang saya temukan yang sepenuhnya berguna untuk hal semacam ini adalah DNS dinamis. Ini akan memungkinkan Anda untuk mengatur FQDN yang dapat diselesaikan yang dapat Anda query kapan pun dibutuhkan. DyDns berjalan sebagai layanan ringan pada sistem tempat Anda menginstalnya dan memperbarui catatan kapan saja informasi alamat IP berubah.

Axxmasterr
sumber