ตัวอย่างเช่นฉันต้องการอนุญาตให้ Tom the DBA เป็นผู้ใช้ oracle แต่ไม่ใช่ผู้ใช้ Tomcat หรือรูท
ฉันต้องการที่จะทำเช่นนี้เพื่อระบบเร็ว ๆ su <user>
นี้และมีช่วงเวลาที่ยากหาบันทึกของฉันในการตั้งค่าอื่นผมใช้ปีที่ผ่านมาที่ยังได้รับอนุญาตไวยากรณ์ ในสถานการณ์ของฉันฉันต้องอนุญาตให้ผู้ใช้หลายคนไปsu
ยังผู้ใช้ที่เฉพาะเจาะจง
สร้างกลุ่มโดยใช้addgroup <groupName>
ผู้ใช้รายอื่นจะสามารถทำได้su
โดยไม่มีรหัสผ่าน จากนั้นเพิ่มกลุ่มนั้นในผู้ใช้แต่ละคนที่คุณต้องการให้su
ผู้ใช้นั้นโดยไม่ต้องใช้รหัสผ่าน:
usermod -a -G <groupName> <userName>
(หรือusermod -a -G oracle tom
) การเปลี่ยนแปลงกลุ่มอาจไม่มีผลจนกว่าจะเข้าสู่ระบบครั้งต่อไป
หมายเหตุ: ในกรณีของคุณคุณมีอยู่แล้วในกลุ่มเพราะoracle
กลุ่มจะได้รับการสร้างขึ้นเมื่อคุณทำผู้ใช้ Oracle adduser oracle
ด้วย
ตอนนี้แก้ไข/etc/pam.d/su
และภายใต้ต่อไปนี้:
# This allows root to su without passwords (normal operation)
auth sufficient pam_rootok.so
.. เพิ่มรายการตรวจสอบกฎเพื่อให้ส่วนมีลักษณะดังนี้:
# This allows root to su without passwords (normal operation)
auth sufficient pam_rootok.so
auth [success=ignore default=1] pam_succeed_if.so user = <groupName>
auth sufficient pam_succeed_if.so use_uid user ingroup <groupName>
แทนที่<groupName>
ด้วยoracle
ในกรณีนี้ นี้จะช่วยให้ผู้ใช้ใด ๆ ที่เป็นส่วนหนึ่งของ<groupName>
การsu <groupName>
ตอนนี้tom
สามารถsu oracle
และถ้าคุณต้องการให้ผู้ใช้รายอื่นมีสิทธิ์เข้าถึงเดียวกันให้เพิ่มพวกเขาในoracle
กลุ่ม
คำถามที่คล้ายกันที่นี่