Bagaimana cara menonaktifkan login SSH jarak jauh sebagai root dari server?


54

Demi keamanan, perusahaan saya meminta saya untuk tidak mengizinkan siapa pun untuk dapat login ke server Ubuntu kami sebagai root dari jarak jauh melalui SSH. Kami masih menginginkan akun root tetap ada, kami hanya tidak ingin akun root itu dapat login dari jarak jauh. Bagaimana saya mencapai ini?

Terima kasih banyak sebelumnya atas waktu Anda.

Jawaban:


85

Saya berasumsi Anda bermaksud masuk melalui SSH? Masukkan baris berikut ke /etc/ssh/sshd_config:

PermitRootLogin no

Jika Anda ingin menolak pengguna tertentu untuk masuk, letakkan ini di file konfigurasi:

DenyUsers root

Ini mengambil pendekatan daftar hitam. Daftar putih umumnya lebih disukai. Jika perusahaan Anda perlu mengizinkan robdan adminpengguna masuk di server, gunakan petunjuk konfigurasi berikut:

AllowUsers rob admin

Setelah membuat perubahan file konfigurasi, restart layanan ssh menggunakan perintah:

sudo service ssh restart

Lihat juga halaman manual .


14
dan sudo service ssh restartmulai berlaku
Maxim Yefremov

Saya tidak melihat file sshd_config, saya melihat ini / etc / ssh / ssh_config.
Chinmaya B

@ChinmayaB Anda mungkin belum menginstal server OpenSSH. Cobasudo apt-get install openssh-server
Lekensteyn

14

Edit file /etc/ssh/sshd_config, cari

PermitRootLogin

dan atur ke no.


Jika Anda melakukan ini tanpa menambahkan pengguna dengan AllowUsers <username>apakah ini tidak berlaku tidak mengizinkan siapa pun masuk ke SSH?
JGlass

1
@JGlass Anda mungkin mengacaukan jawaban ini dengan yang di atas yang memiliki opsi tambahan - baris khusus ini hanya melarang root untuk masuk melalui SSH. Jika ada pengguna lain di sistem, semua hal lain dianggap sama, mereka masih bisa masuk melalui SSH kecuali Anda DenyUsersyang login juga.
armadadrive

@armadadrive - ahh, terima kasih atas koreksi dan penjelasannya!
JGlass

5

Konfigurasi default adalah agar akun root dikunci sehingga Anda tidak dapat masuk sebagai root dari jarak jauh. Anda tidak harus melakukan hal lain, kecuali jika Anda juga ingin memastikan bahwa Anda tidak dapat login sebagai root dari jarak jauh dengan menggunakan kunci RSA. Tentu saja, jika Anda tidak ingin melakukan itu, maka jangan membuat kunci root.


1
Itu bukan default untuk mesin Linode Ubuntu 14.04 saya. PermitRootLogindiatur ke yesdan tidak ada AllowUsersatau DenyUsersgaris konfigurasi. Kecuali saya kehilangan sesuatu, saya tidak berpikir aman untuk menganggapnya terkunci secara default
andrewtweber

@andrewtweber, login root tidak dilarang melalui ssh config, tetapi sistem dengan menetapkan kata sandi root ke nilai yang tidak valid yang tidak dapat Anda masukkan. Jadi, seperti yang saya katakan, Anda masih dapat ssh in sebagai root menggunakan kunci RSA, hanya saja tidak dengan kata sandi.
psusi

ok terima kasih, dapatkah Anda menambahkan penjelasan itu ke jawaban Anda dan kemudian saya akan dapat menghapus downvote saya
andrewtweber

@andrewtweber, ini sudah ada dalam jawaban saya ..
psusi

penjelasan Anda tentang bagaimana akun root dikunci tidak ada dalam jawaban Anda.
Ngomong
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.