Batasi SSH ke satu antarmuka

10

Bagaimana saya bisa membatasi permintaan koneksi SSH yang masuk ke hanya satu antarmuka? Saya menggunakan Ubuntu Server 10,04 LST.

Saya ingin mengunci akses ke SSH hanya ke satu antarmuka karena saya menggunakan server sebagai gateway ke jaringan rumah saya. Satu antarmuka terhubung ke modem / router DSL dan yang lainnya terhubung ke jaringan rumah. Saya hanya ingin mengizinkan akses ke formulir SSH di dalam jaringan rumah.

Apakah membatasi SSH ke satu IP dalam hal ini cukup? Atau apakah saya harus menguncinya ke satu antarmuka?

wowpatrick
sumber
1
Bisakah Anda lebih jelas dengan apa yang Anda maksud dengan "hanya satu antarmuka"? Apakah maksud Anda mesin memiliki lebih dari satu alamat IP dan Anda hanya ingin SSH mendengarkan satu alamat IP? Atau maksud Anda Anda ingin paket inbound ke port SSH pada antarmuka lain akan dihapus? (Permintaan Anda sangat tidak lazim dan mungkin Anda mengajukan pertanyaan yang salah.)
David Schwartz
@ Davidvidchwartz Saya meminta pembatasan antarmuka karena saya tidak yakin apakah itu cukup untuk membatasi akses SSH hanya ke satu IP. Saya juga melengkapi pertanyaan saya dengan lebih detail.
wowpatrick

Jawaban:

12

Dalam file berikut:

 /etc/ssh/sshd_config 

Anda akan melihat garis seperti:

#ListenAddress 0.0.0.0

Ini dikomentari, tetapi merupakan standar, untuk mendaftar pada semua alamat IP untuk permintaan ssh. Anda dapat mengubah ini sehingga itu adalah alamat IP dari antarmuka yang Anda inginkan untuk menerima koneksi, dan hanya alamat IP yang akan menerima koneksi ssh:

ListenAddress 111.222.111.222

Mulai ulang layanan sshd setelah diubah.

Paul
sumber
4
Ini tidak akan membatasi antarmuka tempat SSH dapat beroperasi, hanya alamat IP tujuan. (Itu mungkin yang sebenarnya diinginkan OP. Tapi bukan itu yang diminta OP.)
David Schwartz
@ DavidvidSchwartz terima kasih - dapatkah Anda menjelaskan? Jika alamat IP terikat ke suatu antarmuka, dapatkah antarmuka lain menerima koneksi dengan pengaturan ini entah bagaimana (saya kira jika penerusan diaktifkan mungkin berhasil).
Paul
@ Davidvidchchartz ah, saya melihat komentar Anda di atas.
Paul
1
Penerusan hanya mengacu pada paket yang diterima pada satu antarmuka yang harus ditransmisikan oleh yang lain. Tidak diperlukan untuk menerima paket yang diterima pada antarmuka selain dari satu alamat tujuan yang ditugaskan padanya. Linux menggunakan model di mana alamat IP milik sistem, bukan antarmuka - semua antarmuka menghubungkan satu host.
David Schwartz
2

Coba instal firewall dan hanya izinkan SSH pada satu antarmuka. Preferensi saya adalah Shorewall yang merupakan paket yang dapat diinstal di Ubuntu. Anda harus mengkonfigurasinya sebelum mulai, tetapi didokumentasikan dengan baik dan disertai dengan beberapa contoh konfigurasi.

Saya menggunakan firewall yang sebagian besar tertutup dengan hanya port yang diperlukan terbuka. Jika semua yang ingin Anda lakukan adalah membatasi antarmuka SSH diizinkan, Anda dapat menggunakan tindakan Tolak atau DROP untuk ssh pada antarmuka lain. Saya akan menyarankan jika Anda membangun firewall Anda setidaknya membatasi akses pada antarmuka Internet.

BillThor
sumber