ทั้งหมดที่ฉันต้องทำคือการใช้สคริปต์เฉพาะเป็นผู้ใช้โดยเฉพาะอย่างยิ่งคนที่ไม่ได้มีเปลือกที่ระบุไว้ในnologin/false/etc/passwd
ฉันจะเรียกใช้สคริปต์ในฐานะรูทและควรเรียกใช้ในฐานะผู้ใช้รายอื่น วิ่ง:
~# su -c "/bin/touch /tmp/test" testuser
จะใช้งานได้ แต่ฉันต้องการเชลล์ที่ถูกต้องสำหรับ testuser ฉันรู้ว่าฉันสามารถปิดการใช้งานรหัสผ่านด้วยpasswd -d testuserและปล่อยเปลือก/bin/bashด้วยวิธีนี้จะปลอดภัยเล็กน้อย แต่ฉันต้องมีnologin/falseเปลือก
โดยทั่วไปสิ่งที่ฉันต้องการคือสิ่งที่crontabจะเกิดขึ้นเมื่อเราตั้งค่างานให้ทำงานในฐานะผู้ใช้เฉพาะไม่ว่าจะมีงานnologin/falseเชลล์
ps ฉันพบกระทู้นี้รันคำสั่งในฐานะผู้ใช้ nologinแต่ฉันไม่รู้ว่าจะconcatenateใช้คำสั่งsu -s /bin/sh $userไปยังสคริปต์ที่ฉันต้องใช้อย่างไร
root:root -rwsr-x---อะไร?