วิธีการใช้ Sudo บน Debian, CentOS และ FreeBSD

การใช้sudoผู้ใช้เพื่อเข้าถึงเซิร์ฟเวอร์และดำเนินการคำสั่งที่ระดับรูทเป็นวิธีปฏิบัติที่พบบ่อยมากในหมู่ผู้ดูแลระบบ Linux และ Unix การใช้งานของsudoผู้ใช้มักจะถูกเชื่อมโยงกันด้วยการปิดการใช้งานการเข้าถึงรูทโดยตรงไปยังเซิร์ฟเวอร์ของตนเพื่อป้องกันการเข้าถึงโดยไม่ได้รับอนุญาต

ในบทช่วยสอนนี้เราจะกล่าวถึงขั้นตอนพื้นฐานสำหรับการปิดใช้งานการเข้าถึงรูตโดยตรงสร้างผู้ใช้ sudo และตั้งค่ากลุ่ม sudo บน CentOS, Debian และ FreeBSD

ข้อกำหนดเบื้องต้น

  • เซิร์ฟเวอร์ Linux ที่เพิ่งติดตั้งพร้อมการกระจายที่คุณต้องการ
  • เท็กซ์เอดิเตอร์ติดตั้งบนเซิร์ฟเวอร์ไม่ว่าจะเป็น nano, vi, vim, emacs

ขั้นตอนที่ 1: การติดตั้ง sudo

Debian

apt-get install sudo -y

CentOS

yum install sudo -y

FreeBSD

cd /usr/ports/security/sudo/ && make install clean

หรือ

pkg install sudo

ขั้นตอนที่ 2: การเพิ่มผู้ใช้ sudo

sudoผู้ใช้เป็นบัญชีผู้ใช้ปกติบนเครื่อง Linux หรือ Unix

Debian

adduser mynewusername

CentOS

adduser mynewusername

FreeBSD

adduser mynewusername

ขั้นตอนที่ 3: การเพิ่มผู้ใช้ใหม่ในกลุ่มล้อ(ตัวเลือก)

กลุ่มล้อเป็นกลุ่มผู้ใช้ที่ จำกัด จำนวนของผู้ที่สามารถที่suจะรูต การเพิ่มsudoผู้ใช้ของคุณในwheelกลุ่มเป็นทางเลือกทั้งหมด แต่แนะนำให้เลือก

หมายเหตุ:ใน Debian ที่กลุ่มที่มักจะพบแทนsudo wheelอย่างไรก็ตามคุณสามารถเพิ่มwheelกลุ่มด้วยตนเองโดยใช้groupaddคำสั่ง สำหรับจุดประสงค์ของบทช่วยสอนนี้เราจะใช้sudoกลุ่มสำหรับ Debian

ความแตกต่างระหว่างและwheelsudo

ใน CentOS และ Debian ผู้ใช้ที่อยู่ในwheelกลุ่มสามารถดำเนินการsuและขึ้นสู่โดยตรงrootได้ ในขณะเดียวกันsudoผู้ใช้จะต้องใช้sudo suก่อน โดยพื้นฐานแล้วไม่มีความแตกต่างที่แท้จริงยกเว้นไวยากรณ์ที่ใช้ในการรูทและผู้ใช้ที่อยู่ในทั้งสองกลุ่มสามารถใช้sudoคำสั่งได้

Debian

usermod -aG sudo mynewusername

CentOS

usermod -aG wheel mynewusername

FreeBSD

pw group mod wheel -m mynewusername

ขั้นตอนที่ 4: ตรวจสอบให้แน่ใจว่าsudoersไฟล์ของคุณได้รับการติดตั้งอย่างถูกต้อง

มันเป็นสิ่งสำคัญเพื่อให้แน่ใจว่าsudoersไฟล์ที่อยู่ใน/etc/sudoersการตั้งค่าอย่างถูกต้องเพื่อให้sudo usersสามารถใช้sudoคำสั่งได้อย่างมีประสิทธิภาพ เพื่อให้บรรลุผลนั้นเราจะดูเนื้อหา/etc/sudoersและแก้ไขตามความเหมาะสม

Debian

vim /etc/sudoers

หรือ

visudo

CentOS

vim /etc/sudoers

หรือ

visudo

FreeBSD

vim /etc/sudoers

หรือ

visudo

หมายเหตุ:visudoคำสั่งจะเปิด/etc/sudoersใช้โปรแกรมแก้ไขข้อความที่ต้องการของระบบ(ปกติ vi หรือเป็นกลุ่ม)

เริ่มตรวจสอบและแก้ไขด้านล่างบรรทัดนี้:

# Allow members of group sudo to execute any command

ส่วนนี้/etc/sudoersมักมีลักษณะเช่นนี้:

# Allow members of group sudo to execute any command
%sudo   ALL=(ALL:ALL) ALL

ในบางระบบคุณอาจไม่พบ%wheelแทน%sudo; ในกรณีนี้จะเป็นบรรทัดที่คุณจะเริ่มแก้ไข

หากบรรทัดที่ขึ้นต้นด้วย%sudoDebian หรือ%wheelCentOS และ FreeBSD ไม่ได้ถูกใส่เครื่องหมายความคิดเห็นไว้(นำหน้าด้วย #)หมายความว่า sudo ได้ตั้งค่าไว้แล้วและเปิดใช้งานแล้ว จากนั้นคุณสามารถย้ายไปยังขั้นตอนถัดไป

ขั้นตอนที่ 5: การอนุญาตให้ผู้ใช้ที่เป็นของทั้งwheelหรือsudoกลุ่มเพื่อรันsudoคำสั่ง

เป็นไปได้ที่จะอนุญาตให้ผู้ใช้ที่อยู่ในกลุ่มผู้ใช้ทั้งสองไม่สามารถเรียกใช้งานsudoคำสั่งได้โดยการเพิ่มพวกเขาลง/etc/sudoersไปดังนี้:

anotherusername ALL=(ALL) ALL

ขั้นตอนที่ 6: การรีสตาร์ทเซิร์ฟเวอร์ SSHD

ในการใช้การเปลี่ยนแปลงที่คุณทำ/etc/sudoersคุณต้องรีสตาร์ทเซิร์ฟเวอร์ SSHD ดังนี้:

Debian

/etc/init.d/sshd restart

CentOS 6

/etc/init.d/sshd restart

CentOS 7

systemctl restart sshd.service

FreeBSD

/etc/rc.d/sshd start

ขั้นตอนที่ 7: ทดสอบ

หลังจากคุณรีสตาร์ทเซิร์ฟเวอร์ SSH แล้วให้ออกจากระบบแล้วลงชื่อเข้าใช้ใหม่ในฐานะของคุณsudo userจากนั้นพยายามเรียกใช้คำสั่งทดสอบบางคำสั่งดังนี้:

sudo uptime
sudo whoami

ใด ๆ ของคำสั่งดังต่อไปนี้จะช่วยให้ที่จะกลายเป็นsudo userroot

sudo su -
sudo -i
sudo -S

หมายเหตุ:

  • whoamiคำสั่งจะกลับเมื่อคู่กับrootsudo
  • คุณจะได้รับแจ้งให้ป้อนรหัสผ่านของผู้ใช้เมื่อดำเนินการsudoคำสั่งเว้นแต่คุณจะสั่งให้ระบบแจ้งให้ไม่ใส่sudo usersรหัสผ่าน โปรดทราบว่าไม่ใช่วิธีปฏิบัติที่แนะนำ

ทางเลือก: อนุญาตsudoโดยไม่ต้องป้อนรหัสผ่านของผู้ใช้

ดังที่อธิบายไว้ก่อนหน้านี้นี่ไม่ใช่วิธีปฏิบัติที่แนะนำและรวมอยู่ในบทช่วยสอนนี้เพื่อจุดประสงค์ในการสาธิตเท่านั้น

ในการอนุญาตให้คุณsudo userรันsudoคำสั่งโดยไม่ได้รับพร้อมต์สำหรับรหัสผ่านให้ต่อท้ายบรรทัดการเข้าถึง/etc/sudoersด้วยNOPASSWD: ALLดังนี้:

%sudo   ALL=(ALL:ALL) ALL   NOPASSWD: ALL

หมายเหตุ:คุณต้องรีสตาร์ทเซิร์ฟเวอร์ SSHD ของคุณเพื่อใช้การเปลี่ยนแปลง

ขั้นตอนที่ 8: ปิดใช้งานการเข้าถึงรูตโดยตรง

ตอนนี้คุณได้ยืนยันแล้วว่าคุณสามารถใช้งานได้sudo userโดยไม่มีปัญหาตอนนี้ถึงเวลาสำหรับขั้นตอนที่แปดและขั้นสุดท้ายแล้วปิดการใช้งานการเข้าถึงรูทโดยตรง

ขั้นแรกให้เปิด/etc/ssh/sshd_configโดยใช้โปรแกรมแก้ไขข้อความที่คุณชื่นชอบและค้นหาบรรทัดที่มีสตริงต่อไปนี้ มันอาจจะนำหน้าด้วย#ตัวละคร

PermitRootLogin

ไม่ว่าจะใส่คำนำหน้าหรือค่าของตัวเลือกใน/etc/ssh/sshd_configคุณจะต้องเปลี่ยนบรรทัดดังต่อไปนี้:

PermitRootLogin no

ในที่สุดรีสตาร์ทเซิร์ฟเวอร์ SSHD ของคุณ

หมายเหตุ:อย่าลืมที่จะทดสอบการเปลี่ยนแปลงของคุณโดยพยายามที่จะ SSH rootลงในเซิร์ฟเวอร์ของคุณเป็น หากคุณไม่สามารถทำได้แสดงว่าคุณได้ทำตามขั้นตอนที่จำเป็นทั้งหมดแล้ว

นี่เป็นการสรุปบทเรียนของเรา



Leave a Comment

การติดตั้ง pfSense บน Vultr Cloud Server

การติดตั้ง pfSense บน Vultr Cloud Server

pfSense เป็นเครื่องมือที่เหมาะสำหรับผู้ดูแลระบบที่ต้องการเพิ่มคุณสมบัติที่หลากหลายในเครือข่ายของพวกเขา มันเป็นหลักที่มาเปิด

วิธีการติดตั้ง LimeSurvey CE บน FreeBSD 12

วิธีการติดตั้ง LimeSurvey CE บน FreeBSD 12

ใช้ระบบที่แตกต่างกันอย่างไร LimeSurvey เป็นซอฟต์แวร์สำรวจโอเพ่นซอร์สที่เขียนด้วย PHP รหัสที่มา LimeSurvey โฮสต์บน GitHub คู่มือนี้จะแสดงให้คุณเห็น

Nginx Reverse Proxy และการตั้งค่า Golang บน FreeBSD

Nginx Reverse Proxy และการตั้งค่า Golang บน FreeBSD

ข้อกำหนดความรู้พื้นฐานของ UNIX FreeBSD x64 พร้อมติดตั้ง Nginx ติดตั้งเครื่องมือคุณจะต้องใช้หลายโปรแกรมที่ไม่ได้จัดส่งมาพร้อมกับ FreeBSD Ru

วิธีการติดตั้ง Automad CMS บน FreeBSD 12

วิธีการติดตั้ง Automad CMS บน FreeBSD 12

ใช้ระบบที่แตกต่างกันอย่างไร Automad เป็นระบบจัดการเนื้อหาแบบโอเพนซอร์ซ (CMS) และเทมเพลตเอนจินที่เขียนด้วย PHP รหัสที่มา Automad ฉัน

วิธีการติดตั้ง Redaxscript 3.2 CMS บน FreeBSD 11 FAMP VPS

วิธีการติดตั้ง Redaxscript 3.2 CMS บน FreeBSD 11 FAMP VPS

ใช้ระบบที่แตกต่างกันอย่างไร Redaxscript 3.2 CMS เป็นระบบจัดการเนื้อหา (CMS) ที่ทันสมัยและมีน้ำหนักเบาฟรีและโอเพนซอร์สที่มี rocket-fas

วิธีติดตั้ง X-Cart 5 บน FreeBSD 12

วิธีติดตั้ง X-Cart 5 บน FreeBSD 12

ใช้ระบบที่แตกต่างกันอย่างไร X-Cart เป็นแพลตฟอร์มอีคอมเมิร์ซแบบโอเพ่นซอร์สที่มีความยืดหยุ่นสูงพร้อมคุณสมบัติและการผสานรวมมากมาย ซอร์สโค้ด X-Cart เป็นโฮสต์

ติดตั้ง WordPress บน OpenBSD 6.2

ติดตั้ง WordPress บน OpenBSD 6.2

บทนำ WordPress เป็นระบบจัดการเนื้อหาที่โดดเด่นบนอินเทอร์เน็ต มันเพิ่มประสิทธิภาพทุกอย่างตั้งแต่บล็อกไปจนถึงเว็บไซต์ที่ซับซ้อนพร้อมเนื้อหาแบบไดนามิก

ติดตั้งและกำหนดค่า Murmur (เซิร์ฟเวอร์พึมพำ) ใน FreeBSD 11

ติดตั้งและกำหนดค่า Murmur (เซิร์ฟเวอร์พึมพำ) ใน FreeBSD 11

Murmur เป็นซอฟต์แวร์เซิร์ฟเวอร์อย่างเป็นทางการสำหรับโปรโตคอลการสื่อสารด้วยเสียง Mumble การดำเนินการอย่างเป็นทางการนี้มีเสถียรภาพและมีประสิทธิภาพ คู่มือนี้จะ

วิธีรักษาความปลอดภัย FreeBSD ด้วย PF Firewall

วิธีรักษาความปลอดภัย FreeBSD ด้วย PF Firewall

บทช่วยสอนนี้จะแสดงวิธีปกป้องเซิร์ฟเวอร์ FreeBSD ของคุณโดยใช้ไฟร์วอลล์ OpenBSD PF เราจะสมมติว่าคุณมีการติดตั้ง FreeBSD ที่สะอาดแล้ว

วิธีการติดตั้ง Cachet บน FreeBSD 11

วิธีการติดตั้ง Cachet บน FreeBSD 11

ใช้ระบบที่แตกต่างกันอย่างไร Cachet เป็นระบบหน้าสถานะโอเพนซอร์สที่เขียนด้วย PHP ซอร์สโค้ดสำหรับ Cachet นั้นโฮสต์บน GitHub ในคู่มือนี้คุณจะ

วิธีการติดตั้ง WonderCMS บน FreeBSD 12

วิธีการติดตั้ง WonderCMS บน FreeBSD 12

ใช้ระบบที่แตกต่างกันอย่างไร WonderCMS เป็นโอเพนซอร์ซ CMS แบบเร็วและเล็กเขียนด้วย PHP รหัสที่มาของ WonderCMS นั้นโฮสต์บน Github คู่มือนี้จะ

การสร้างเว็บไซต์อย่างง่ายบน Vultr ด้วย OpenBSD และ httpd

การสร้างเว็บไซต์อย่างง่ายบน Vultr ด้วย OpenBSD และ httpd

คำนำวัตถุประสงค์ของคู่มือนี้เพื่อแสดงให้คุณเห็นว่าการสร้างโฮมเพจสำหรับเว็บไซต์ของคุณบน Vultr ด้วย OpenBSD และ httpd นั้นง่ายเพียงใด กำลังสร้าง

ติดตั้ง Varnish 5 ด้วย Nginx บน FreeBSD 11

ติดตั้ง Varnish 5 ด้วย Nginx บน FreeBSD 11

วานิชเป็นแคชเซิร์ฟเวอร์โอเพ่นซอร์สที่เก็บเนื้อหาจากเว็บเซิร์ฟเวอร์ มันถูกติดตั้งที่ด้านหน้าของเว็บเซิร์ฟเวอร์เช่น Apache หรือ Nginx เรื่องของชินชิน

วิธีการติดตั้ง Dolibarr บน FreeBSD 12

วิธีการติดตั้ง Dolibarr บน FreeBSD 12

ใช้ระบบที่แตกต่างกันอย่างไร Dolibarr เป็นการวางแผนทรัพยากรขององค์กรโอเพ่นซอร์ส (ERP) และการจัดการลูกค้าสัมพันธ์ (CRM) สำหรับธุรกิจ Dolibarr

เพิ่มความปลอดภัยให้กับ FreeBSD โดยใช้ IPFW และ SSHGuard

เพิ่มความปลอดภัยให้กับ FreeBSD โดยใช้ IPFW และ SSHGuard

เซิร์ฟเวอร์ VPS มักถูกโจมตีโดยผู้บุกรุก การโจมตีประเภททั่วไปจะปรากฏในบันทึกของระบบเมื่อมีการพยายามล็อกอินหลายร้อยครั้งโดยไม่ได้รับอนุญาต การตั้งค่า

วิธีการติดตั้ง ProcessWire CMS 3.0 บน FreeBSD 11 FAMP VPS

วิธีการติดตั้ง ProcessWire CMS 3.0 บน FreeBSD 11 FAMP VPS

ใช้ระบบที่แตกต่างกันอย่างไร ProcessWire CMS 3.0 เป็นระบบจัดการเนื้อหา (CMS) ที่ง่ายยืดหยุ่นและมีประสิทธิภาพฟรีและโอเพนซอร์ส ProcessWire CMS 3

วิธีการติดตั้ง Matomo Analytics บน FreeBSD 11

วิธีการติดตั้ง Matomo Analytics บน FreeBSD 11

ใช้ระบบที่แตกต่างกันอย่างไร Matomo (ชื่อเดิม Piwik) เป็นแพลตฟอร์มการวิเคราะห์โอเพนซอร์ซซึ่งเป็นทางเลือกเปิดให้ Google Analytics แหล่งที่มาของ Matomo นั้นโฮสต์อยู่

วิธีเปิดใช้งาน TLS 1.3 ใน Nginx บน FreeBSD 12

วิธีเปิดใช้งาน TLS 1.3 ใน Nginx บน FreeBSD 12

ใช้ระบบที่แตกต่างกันอย่างไร TLS 1.3 เป็นเวอร์ชันของโปรโตคอล Transport Layer Security (TLS) ที่เผยแพร่ในปี 2018 ตามมาตรฐานที่เสนอใน RFC 8446

เซิร์ฟเวอร์อีเมล OpenBSD ที่ใช้ OpenSMTPD, Dovecot, Rspamd และ RainLoop

เซิร์ฟเวอร์อีเมล OpenBSD ที่ใช้ OpenSMTPD, Dovecot, Rspamd และ RainLoop

บทนำบทช่วยสอนนี้แสดงให้เห็นถึงเซิร์ฟเวอร์อีเมลแบบเต็มรูปแบบที่ทำงานบน OpenBSD โดยใช้ OpenSMTPD, Dovecot, Rspamd และ RainLoop OpenSMTPD คือ th

วิธีติดตั้งแอปพลิเคชั่นจดหมายข่าว Mailtrain บน FreeBSD 12

วิธีติดตั้งแอปพลิเคชั่นจดหมายข่าว Mailtrain บน FreeBSD 12

ใช้ระบบที่แตกต่างกันอย่างไร Mailtrain เป็นแอปรับจดหมายข่าวแบบโอเพ่นซอร���สที่สร้างขึ้นบน Node.js และ MySQL / MariaDB แหล่งที่มาของ Mailtrains อยู่บน GitHub Thi

วิธีการติดตั้ง Directus 6.4 CMS บน CentOS 7 LAMP VPS

วิธีการติดตั้ง Directus 6.4 CMS บน CentOS 7 LAMP VPS

เรียนรู้วิธีการติดตั้ง Directus 6.4 CMS บน CentOS 7; ระบบการจัดการเนื้อหา Headless ที่มีความยืดหยุ่นสูงและปลอดภัย

ตั้งค่า Nginx บน Ubuntu เพื่อสตรีมวิดีโอสด HLS

ตั้งค่า Nginx บน Ubuntu เพื่อสตรีมวิดีโอสด HLS

เรียนรู้วิธีการตั้งค่า Nginx บน Ubuntu สำหรับการสตรีมวิดีโอสด HLS ด้วยคำแนะนำที่ชัดเจนและเป็นประโยชน์

การสำรองข้อมูลยอดนิยมด้วย Percona XtraBackup บนแอพ WordPress แบบคลิกเดียว

การสำรองข้อมูลยอดนิยมด้วย Percona XtraBackup บนแอพ WordPress แบบคลิกเดียว

เรียนรู้การใช้ Percona XtraBackup สำหรับการสำรองข้อมูลด้วยวิธีที่เป็นระบบและง่ายดายบน WordPress ออนไลน์ของคุณ

ReactOS: นี่คืออนาคตของ Windows หรือไม่?

ReactOS: นี่คืออนาคตของ Windows หรือไม่?

ReactOS ซึ่งเป็นโอเพ่นซอร์สและระบบปฏิบัติการฟรีพร้อมเวอร์ชันล่าสุดแล้ว สามารถตอบสนองความต้องการของผู้ใช้ Windows ยุคใหม่และล้ม Microsoft ได้หรือไม่? มาหาข้อมูลเพิ่มเติมเกี่ยวกับรูปแบบเก่านี้ แต่เป็นประสบการณ์ OS ที่ใหม่กว่ากัน

AI สามารถต่อสู้กับการโจมตีของแรนซัมแวร์ที่เพิ่มขึ้นได้หรือไม่

AI สามารถต่อสู้กับการโจมตีของแรนซัมแวร์ที่เพิ่มขึ้นได้หรือไม่

การโจมตีของ Ransomware กำลังเพิ่มขึ้น แต่ AI สามารถช่วยจัดการกับไวรัสคอมพิวเตอร์ตัวล่าสุดได้หรือไม่? AI คือคำตอบ? อ่านที่นี่รู้ว่า AI boone หรือ bane

เชื่อมต่อผ่าน WhatsApp Desktop App 24*7

เชื่อมต่อผ่าน WhatsApp Desktop App 24*7

ในที่สุด Whatsapp ก็เปิดตัวแอพเดสก์ท็อปสำหรับผู้ใช้ Mac และ Windows ตอนนี้คุณสามารถเข้าถึง Whatsapp จาก Windows หรือ Mac ได้อย่างง่ายดาย ใช้ได้กับ Windows 8+ และ Mac OS 10.9+

AI จะนำกระบวนการอัตโนมัติไปสู่อีกระดับได้อย่างไร

AI จะนำกระบวนการอัตโนมัติไปสู่อีกระดับได้อย่างไร

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

การอัปเดตเสริม macOS Catalina 10.15.4 ทำให้เกิดปัญหามากกว่าการแก้ปัญหา

การอัปเดตเสริม macOS Catalina 10.15.4 ทำให้เกิดปัญหามากกว่าการแก้ปัญหา

เมื่อเร็ว ๆ นี้ Apple เปิดตัว macOS Catalina 10.15.4 การอัปเดตเสริมเพื่อแก้ไขปัญหา แต่ดูเหมือนว่าการอัปเดตทำให้เกิดปัญหามากขึ้นที่นำไปสู่การสร้างเครื่อง Mac อ่านบทความนี้เพื่อเรียนรู้เพิ่มเติม

13 เครื่องมือดึงข้อมูลเชิงพาณิชย์ของ Big Data

13 เครื่องมือดึงข้อมูลเชิงพาณิชย์ของ Big Data

13 เครื่องมือดึงข้อมูลเชิงพาณิชย์ของ Big Data

ระบบไฟล์บันทึกคืออะไรและทำงานอย่างไร

ระบบไฟล์บันทึกคืออะไรและทำงานอย่างไร

คอมพิวเตอร์ของเราจัดเก็บข้อมูลทั้งหมดในลักษณะที่เรียกว่าระบบไฟล์บันทึก เป็นวิธีการที่มีประสิทธิภาพที่ช่วยให้คอมพิวเตอร์สามารถค้นหาและแสดงไฟล์ได้ทันทีที่คุณกดค้นหาhttps://wethegeek.com/?p=94116&preview=true