(愚かな奴)Pythonスクリプトを隠すためにroot権限を与えても大丈夫ですか?

(愚かな奴)Pythonスクリプトを隠すためにroot権限を与えても大丈夫ですか?

人々が私のPythonスクリプトを見たくないので、私の検索によると、これは実際には可能ではありませんが、Pythonスクリプトをroot-only読み取り権限に設定すると機能しますか?これに欠点はありますか?

プログラムは起動時にルートとしてバックグラウンドで実行され、条件に従って電子メールを送信します。電子メール部分では、ユーザー名とパスワードをSMTPに送信する必要があります。私はこれらの資格情報を保護したいと思います。

答え1

テキストファイルからパスワードを隠すことはセキュリティを制限するだけですが、それでも小さな改善があります。

結局、Unixのパスワードも/etc/shadowに保存されますが、ソルトされています。

人々がコンピュータにアクセスしてLive CDを起動できる場合は、Live CD環境のルートなので、コンピュータ上のすべてのファイルを読み取ることができることに注意してください。

答え2

所有者をrootに変更し、他のユーザーとグループへのすべてのアクセス権を削除すると、rootアクセス権なしで誰もスクリプトを読み取ることができないことを効果的に保証できます。

次の2つのコマンドを実行してこれを実行できます。

最初のものは、ファイル所有者(ルート)だけがスクリプトを読み取って実行する権限を持つことを保証します。chmod 500 script.py

(ファイルに書くことができなければそうすることができますが、chmod 700 script.py一般的に可能であれば最小限の権限の規則に従いたいと思います。)

2番目のコマンドは、ルートをスクリプトの所有者にします。
sudo chown root:root script.py

この時点では、ルート以外の誰もスクリプトを読み書きできません。ユーザーが実行するとsudoroot ユーザーとして実行されることに注意してください。

関連情報