doas (do as) เป็นโปรแกรมอรรถประโยชน์สำหรับระบบปฏิบัติการ Unix-like ที่ใช้เพื่อให้ผู้ใช้ทั่วไปสามารถรันคำสั่งในฐานะผู้ใช้รายอื่น ( โดยปกติคือ root ) ได้ เช่นเดียวกับ sudo
เดิมทีโปรแกรมนี้ถูกพัฒนาโดยโครงการ OpenBSD เพื่อเป็นทางเลือกที่ “เบาและปลอดภัยกว่า” sudo เนื่องจากมีโค้ดที่สั้นกว่ามาก ( ประมาณ 1 / 10 ของ sudo ) ทำให้ตรวจสอบช่องโหว่ได้ง่ายกว่า
ความแตกต่างที่สำคัญระหว่าง doas และ sudo
| คุณสมบัติ | doas | sudo |
| ความซับซ้อน | เรียบง่ายมาก โค้ดน้อย | ซับซ้อน มีฟีเจอร์เยอะมาก |
| การตั้งค่า | ใช้ไฟล์ /etc/doas.conf ( อ่านง่าย ) | ใช้ไฟล์ /etc/sudoers ( ใช้ visudo ) |
| ขนาด | เล็กและทำงานเร็ว | ใหญ่กว่าและกินทรัพยากรมากกว่าเล็กน้อย |
| ความแพร่หลาย | เป็นมาตรฐานใน OpenBSD ( เริ่มมีใน Linux บาง distro ) | เป็นมาตรฐานใน Linux เกือบทุกตัว |
วิธีใช้งานเบื้องต้น
- รูปแบบคำสั่ง
doas [command] - การตั้งค่า ( Configuration )
คุณต้องแก้ไขไฟล์/etc/doas.confเพื่อกำหนดสิทธิ์ เช่น- ให้สิทธิ์กลุ่ม wheel รันคำสั่งในฐานะ root
permit :wheel - ให้สิทธิ์โดยไม่ต้องถามรหัสผ่าน ( nopass )
permit nopass :wheel - จำรหัสผ่านไว้สักพัก ( เหมือน sudo )
permit persist :wheel
- ให้สิทธิ์กลุ่ม wheel รันคำสั่งในฐานะ root
ทำไมถึงควรใช้ ?
ถ้าคุณต้องการความปลอดภัยที่สูงขึ้นบนระบบที่เน้นความ Minimalist ( เช่น Alpine Linux, Arch Linux หรือ OpenBSD ) และไม่ได้ต้องการฟีเจอร์ที่ซับซ้อนของ sudo การเปลี่ยนมาใช้ doas จะช่วยลด “Attack Surface” ของระบบลงได้ครับ
อ่านเพิ่มเติม
