如果要創建具有有限功能的帳戶,可以為該任務創建/usr/local/directadmin/scripts/custom/all_pre.sh腳本。 一個常見原因是來自遠程
服務器的API相關命令。 在這個例子中,我們將演示如何限制“admin2”帳戶可以運行的命令,只允許多
服務器dns的基本dns api相關功能:
#!/bin/sh
if [ "$username" = "admin2" ]; then
if [ "$command" = "/CMD_API_DNS_ADMIN" ]; then
exit 0;
fi
if [ "$command" = "/CMD_API_LOGIN_TEST" ]; then
exit 0;
fi
if [ "$command" = "/CMD_API_USER_EXISTS" ]; then
exit 0;
fi
exit 1;
fi
exit 0;
將其保存到您的all_pre.sh腳本中。 同樣的想法可以適用于帳戶可以運行的任何命令。 請注意,這僅適用于POST功能。 所有的“GET”函數都不受這個腳本的阻礙。
請記住將all_pre.sh修改為755。
在HTM文件上啟用all_pre.sh也是一個好主意,所以他們甚至不能登錄,更不用說做任何事情了。
相關文件:directadmin.com/features.php?id=672
從DA 1.38.0開始,commands.allow和commands.deny功能可以取代它:http://www.directadmin.com/features.php?id = 1171,但沒有像all_pre.sh那么靈活 ,如果你需要檢查變量。
從DA 1.40.2開始,有一個新的登錄密鑰系統,可以將單獨的密碼添加到帳戶中。 這些新密鑰(密碼)可以基于IP,使用,過期和允許的命令進行限制。