ฉันจะปิดใช้งานการเข้าสู่ระบบ SSH ระยะไกลในฐานะรูทจากเซิร์ฟเวอร์ได้อย่างไร


54

เพื่อจุดประสงค์ด้านความปลอดภัย บริษัท ของฉันต้องการให้ฉันไม่อนุญาตให้ใครก็ตามสามารถเข้าสู่ระบบเซิร์ฟเวอร์ Ubuntu ของเราเนื่องจากรูทผ่าน SSH เรายังต้องการให้บัญชีรูทมีอยู่เราไม่ต้องการให้สามารถเข้าสู่ระบบจากระยะไกลได้ ฉันจะทำสิ่งนี้ได้อย่างไร

ขอบคุณล่วงหน้าสำหรับเวลาของคุณ

คำตอบ:


85

ฉันคิดว่าคุณหมายถึงการเข้าสู่ระบบมากกว่า SSH? วางบรรทัดต่อไปนี้เพื่อ/etc/ssh/sshd_config:

PermitRootLogin no

หากคุณต้องการที่จะปฏิเสธไม่ให้ผู้ใช้บางคนเข้าสู่ระบบให้ใส่สิ่งนี้ลงในไฟล์กำหนดค่า:

DenyUsers root

วิธีนี้ใช้วิธีการขึ้นบัญชีดำ รายการที่อนุญาตนั้นดีกว่า หาก บริษัท ของคุณต้องการอนุญาตrobและadminผู้ใช้ล็อกอินบนเซิร์ฟเวอร์ให้ใช้คำสั่งกำหนดค่าต่อไปนี้:

AllowUsers rob admin

หลังจากทำการเปลี่ยนแปลงไฟล์คอนฟิกูเรชันให้รีสตาร์ทเซอร์วิส ssh โดยใช้คำสั่ง:

sudo service ssh restart

เห็นแล้วยังหน้าคู่มือ


14
และsudo service ssh restartจะมีผล
Maxim Yefremov

ฉันไม่เห็นไฟล์ sshd_config ฉันเห็นไฟล์นี้หนึ่ง / etc / ssh / ssh_config
Chinmaya B

@ChinmayaB คุณอาจไม่ได้ติดตั้งเซิร์ฟเวอร์ OpenSSH ลองsudo apt-get install openssh-server
Lekensteyn

14

แก้ไขไฟล์/etc/ssh/sshd_configค้นหา

PermitRootLogin

noและตั้งค่าให้


หากคุณทำเช่นนี้โดยไม่เพิ่มผู้ใช้ด้วยAllowUsers <username>จะไม่ส่งผลกระทบต่อ SSH หรือไม่
JGlass

1
@JGlass คุณอาจทำให้คำตอบนี้ตรงกับคำตอบข้างต้นที่มีตัวเลือกเพิ่มเติม - บรรทัดนี้เฉพาะห้ามมิให้รูทจากการล็อกอินผ่าน SSH หากมีผู้ใช้รายอื่นในระบบสิ่งอื่น ๆ ที่เท่าเทียมกันพวกเขาจะยังสามารถเข้าสู่ระบบผ่าน SSH ได้เว้นแต่คุณจะDenyUsersเข้าสู่ระบบด้วยเช่นกัน
armadadrive

@ armadadrive - อ่าขอบคุณสำหรับการแก้ไขและคำอธิบาย!
JGlass

5

การกำหนดค่าเริ่มต้นสำหรับบัญชีรูทที่จะล็อคเพื่อให้คุณไม่สามารถเข้าสู่ระบบในฐานะที่เป็นระยะไกล คุณไม่ต้องทำอะไรอย่างอื่นนอกจากว่าคุณต้องการตรวจสอบให้แน่ใจว่าคุณไม่สามารถเข้าสู่ระบบในฐานะผู้ใช้จากระยะไกลโดยใช้คีย์ RSA แน่นอนถ้าคุณไม่ต้องการทำเช่นนั้นไม่ต้องตั้งค่ารูทคีย์


1
นั่นไม่ใช่ค่าเริ่มต้นสำหรับเครื่อง Linode Ubuntu 14.04 ของฉัน PermitRootLoginถูกกำหนดเป็นyesและไม่มีบรรทัดAllowUsersหรือกำหนดค่า DenyUsersเว้นแต่ฉันจะหายไปบางสิ่งบางอย่างฉันไม่คิดว่ามันปลอดภัยที่จะคิดว่ามันถูกล็อคโดยค่าเริ่มต้น
andrewtweber

@andrewtweber ไม่อนุญาตให้ล็อกอินรูทผ่านการตั้งค่า ssh แต่ทั้งระบบจะตั้งรหัสผ่านรูทเป็นค่าที่ไม่ถูกต้องซึ่งคุณไม่สามารถป้อนได้ ดังนั้นอย่างที่ฉันพูดคุณยังคงสามารถใช้รูทโดยใช้คีย์ RSA ได้โดยไม่ต้องใช้รหัสผ่าน
psusi

ตกลงขอบคุณคุณสามารถเพิ่มคำอธิบายลงในคำตอบของคุณแล้วฉันจะสามารถลบ downvote ของฉันได้
andrewtweber

@ andrewtweber มันมีอยู่แล้วในคำตอบของฉัน ..
psusi

คำอธิบายของคุณเกี่ยวกับวิธีการที่บัญชีถูกล็อคไม่ได้อยู่ในคำตอบของคุณ อย่างไรก็ตามฉันไม่สามารถลบ downvote ได้จนกว่าคุณจะแก้ไขคำตอบของคุณดังนั้นไปข้างหน้าและดื้อรั้นถ้าคุณต้องการ
andrewtweber
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.