Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> สมาร์ทโฟน >> Linux

วิธีปิดการขอรหัสผ่าน sudo ใน Ubuntu (Passwordless sudo)

คู่มือนี้แนะนำวิธีตั้งค่า Ubuntu ให้ไม่ต้องพิมพ์รหัสผ่านทุกครั้งที่ใช้ sudo

⚠️ คำเตือน: การปิดรหัสผ่าน sudo ลดความปลอดภัยลงอย่างมาก ห้ามทำบนเครื่องสาธารณะ, ที่ทำงาน, หรือเซิร์ฟเวอร์ เหมาะเฉพาะ Desktop ที่บ้านและเชื่อถือผู้ใช้ทั้งหมด

ขั้นตอนการตั้งค่า

  1. เปิดไฟล์ sudoers ด้วย visudo:
    sudo visudo
    

    visudo คือเครื่องมือแก้ไข sudoers ที่ตรวจสอบไวยากรณ์ก่อนบันทึก (ป้องกันล็อกตัวเองนอกระบบ)

  2. เพิ่มบรรทัดท้ายไฟล์:
    username ALL=(ALL) NOPASSWD: ALL
    

    แทนที่ username ด้วยชื่อผู้ใช้จริง เช่น calvin:

    calvin ALL=(ALL) NOPASSWD: ALL
    
  3. บันทึกและออกจาก Editor (ใน nano: Ctrl+O Enter, Ctrl+X)
  4. ทดสอบ: Log out และ log in ใหม่ ลองรัน sudo apt update ควรไม่ถามรหัสผ่าน

อธิบาย Syntax

user  host=(runas)  NOPASSWD: commands
  • username - ผู้ใช้ที่ได้สิทธิ์
  • ALL (host) - ทุกโฮสต์
  • (ALL) (runas) - รันได้เป็น user ใดก็ได้
  • NOPASSWD: ALL - ไม่ต้องรหัสผ่าน สำหรับทุกคำสั่ง

ตัวเลือกปลอดภัยกว่า: เฉพาะคำสั่งบางคำสั่ง

calvin ALL=(ALL) NOPASSWD: /usr/bin/apt, /usr/bin/systemctl

ให้สิทธิ์ passwordless เฉพาะ apt และ systemctl เท่านั้น

ยกเลิกการตั้งค่า

ลบบรรทัดที่เพิ่มใน visudo หรือคอมเมนต์ด้วย #

แนะนำ: หากเบื่อพิมพ์รหัสผ่านบ่อย ให้เพิ่ม Defaults timestamp_timeout=60 ใน sudoers เพื่อขยายเวลาจดจำรหัสผ่านเป็น 60 นาที แทนที่จะปิดสนิท