FreeBSD 安裝 Sudo
# cd /usr/ports/security/sudo
# make && make install
當系統有 Sudo 後,基於安全理由,不要直接編輯組態檔 /etc/sudoers,改用 visudo 來做編輯。visudo 為防止多個使用者同時修改,它會先鎖住 /etc/sudoers,並且確保組態檔的文法正確,一旦發現錯誤會拒絕儲存動作。
假如你的 Apache 的執行身份為 apache,而想透過 PHP 重新啟動 DNS server,用 root 輸入指令 visudo,便會用 vi 開啟 /etc/sudoers,在檔案最底加上以下一行:
apache ALL=NOPASSWD:/etc/rc.d/init.d/named
儲存後可以在 PHP 以 root 身份執行 /etc/rc.d/init.d/named,包括開啟、停止及重新啟動:
PLAIN TEXT
PHP:
- // 開啟 named
- echo $output;
上面的 /usr/bin/sudo 是 sudo 的可執行檔,需要根據自己的安裝目錄進行修改。以上只是個簡單的例子,你可以根據你的需要執行其他管理動作,但如果 web server 是多人共用,那麼在使用 Sudo 時要加倍小心。
引用:Real-Blog
沒有留言:
張貼留言