Berpotensi dibajak sesi SSH & praktik terbaik SSH


14

Saya sedikit panik saat ini. Saya SSHing ke server jauh yang baru-baru ini saya ditugaskan. Saya melakukan ini sebagai root. Saya telah menginstal fail2ban dan memiliki sejumlah besar IP yang dilarang di log.

Terakhir kali saya masuk, saya melihat terminal saya sangat lambat kemudian koneksi internet saya turun. Ketika saya membelinya kembali setelah sekitar 5 menit saya login kembali ke server dan melakukan 'siapa' dan menyadari ada dua pengguna root yang login. Saya akan berpikir bahwa jika koneksi saya menghentikan proses dari sesi terakhir akan menjadi berhenti di server?

Koneksi berakhir dengan 'Write gagal: Pipa rusak' ketika saya pertama kali terputus. Saya membunuh sesi bash dengan root lainnya. Saya tidak tahu banyak tentang keamanan ssh, tetapi bisakah sesi dibajak? apakah ada cara untuk memeriksa ini? Saya harus terus masuk melalui ssh tindakan pencegahan apa yang harus saya ambil? Jika saya entah bagaimana melalui proxy untuk mencapai server saya (seperti seorang pria di serangan tengah) bisakah mereka membajak sesi ssh saya?

Jawaban:


40

Login root mungkin menggantung sesi shell yang dulu Anda. Server Anda juga mungkin mendapatkan dDOS dengan semua upaya masuk yang memaluinya.

Kunci SSH. Jangan izinkan login root, dan permintaan-permintaan yang berusaha memaksa mesin ini akan segera gagal (mengambil sumber daya yang jauh lebih sedikit). Masuk sebagai pengguna normal dan tingkatkan izin melalui sudo, praktik yang seharusnya Anda lakukan. Juga batasi login SSH ke daftar IP klien sehingga mesin yang tidak sopan bahkan tidak bisa mencoba masuk.

Gunakan kunci SSH sebagai ganti kata sandi untuk login pengguna. Mereka lebih mudah ditangani, dan dapat dilindungi kata sandi jika Anda secara tidak sengaja memberikan kunci pribadi ke tempat yang salah (memberi Anda waktu untuk menggantinya dan membatalkan yang lama). Seperti @EEAA disebutkan dalam komentar, Anda juga harus menonaktifkan otentikasi berbasis kata sandi jika Anda ingin membatasi klien untuk hanya menggunakan kunci daripada kata sandi dan kunci.

Jika klan mongol terus menghancurkan tembok kota Anda, mungkin pindahkan SSH ke port tinggi yang berbeda (di bawah 1024, seperti yang ditunjukkan @AustinBurke - sehingga menggunakan port istimewa) alih-alih 22. Ini akan mengurangi lalu lintas di port itu jika ini adalah masalah bagi Anda (dan kebanyakan bot tidak begitu anggun, sehingga mereka hanya akan mencoba 22). Ini tidak akan menghentikan hal-hal dari mencoba port 22 atau bahkan memindai mesin Anda untuk melihat port apa yang sedang mendengarkan SSH, dan dalam kebanyakan kasus adalah ketidaknyamanan yang tidak perlu. Tapi itu bisa membantu.

Orang lain mungkin dapat memberikan lebih banyak tips, tetapi ini adalah langkah-langkah keamanan yang cukup umum untuk server SSH yang menghadap publik.


22
Menggunakan kunci tidak cukup. Seseorang harus menonaktifkan otentikasi kata sandi juga.
EEAA

4
@marcelm Apakah " sejumlah besar IP yang terlarang dalam log " tidak mengisyaratkan bahwa ini mungkin terjadi?
TripeHound

4
@ Tripehound Tidak, tidak. Ia tidak mengatakan apa-apa tentang sumber daya relatif yang dikonsumsi.
marcelm

3
Ini adalah petunjuk untuk efek itu, @marcelm.
Lightness Races dengan Monica

4
Sementara itu layak di alam semesta ini, ssh cukup aman. Anda tentu saja dapat mengambil lalu lintas dalam penerbangan dan menyimpannya dalam keadaan terenkripsi, tetapi pertukaran kunci Diffie-Hellman digunakan untuk membuat saluran terenkripsi. Meretas ini bahkan tidak mungkin jika Anda memiliki kunci ssh pribadi dan publik yang digunakan untuk otentikasi, karena kunci aliran tidak pernah dikomunikasikan selama sesi. Pada saat seseorang telah memecahkan aliran itu, kita semua akan mati.
Pengumpul informasi
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.