Linuxベースのシステムには重複する機能がたくさんあります。たとえば、これらのシステムは同じことを行います。
sudo --login --user <user>
sudo su - <user>
これsudo
-only 方法がよりエレガントに見えます。なしでも可能ですか?su
あまり破壊せずに?
答え1
su
私が正しく覚えているなら、次の微妙な違いがありますsudo
。
su
ユーザーIDの変更のみが許可されます(たとえば、スーパーユーザー)。su
他のユーザーのパスワードを知っているすべてのユーザーがそれを制御することなくそのユーザーになることを許可します。sudo
他のユーザー(ルートを含む)でコマンドを実行できます。sudo
ファイルによって制御されます/etc/sudoers
。
このコマンドの元の目標sudo
は、root権限でコマンドを実行できる人と実行できない人をより効果的に制御することでした。システムに複数の管理者がいる場合は、sudo
rootパスワードなしでrootとしてコマンドを実行できるようにすることが私の観点からより安全です。多くのディストリビューションでは、利用/etc/sudoers
可能なユーザーまたはグループのリストを制御できますsudo
。
答え2
使用の観点からは、sudoはsuを完全に置き換えることができます。ただし、多くのスクリプトやプログラムで使用されるsu
ため、安全に削除する方法はありません。多くのLinuxディストリビューションにはsudoがプリインストールされていません。スクリプトで sudo を使用すると、これらのシステムと互換性がありません。 Jernejが彼のコメントで述べたように、suはPosix標準の一部です。これは、スクリプトを作成するときにsu
スクリプトを使用すると、すべてのPosix互換オペレーティングシステムで実行されることを信頼できる必要があることを意味します。
ここ注意事項です。
答え3
sudo
呼び出しプロセスより大きいファイル記述子を自動的に閉じます。>&2
これは問題になる可能性があります。
すべてsudoers
が別のものです。(おそらく不要)試行されテストされたデフォルトのユーザー/グループUnixスタイルの権限スキーム/etc/passwd
から抽象化されたため、独自の管理が必要です。
例えば、~からman growisofs
:
実行すると
sudo(8) growisofs
起動が拒否されます。その理由は次のとおりです。当然、growisofs
DVDメディアに書き込むデータセットにアクセスするか、mkisofs
作成を通じて間接的にアクセスする必要があります。ISO9660事前マスタリングされた画像を録画したい場合は、すぐにまたは直接レイアウトできます。で実行すると、sudo(8)
ファイルシステム上のすべてのファイルへの読み取りアクセス権がgrowisofs
効果的に付与されます。これは、実行可能イメージへの代替パスを決定するために環境変数が解析されるという事実によってさらに悪化します。つまり、以下で実行すると、高い権限で選択したプログラムを実行する権限が効果的に付与されます。何らかの理由で上記の内容が依然として許容可能であると考え、結果に喜んで直面することを望む場合は、実際のバイナリを取得するために次のラッパースクリプトを所定の位置で実行することを検討してください。sudoers
growisofs
$MKISOFS
mkisofs
sudo(8)
growisofs
sudoers
sudo(8)
growisofs
#!/bin/ksh
unset SUDO_COMMAND
export MKISOFS=/path/to/trusted/mkisofs
exec growisofs "$@"
ただし、上記の「解決方法」に提案されている代替案は実際にはインストールであり、
growisofs
set-root-uid
この場合、データmkisofs
への不正アクセスを防ぐために、データにアクセスまたは実行する前に権限を削除します。
少なくとも、su
実際には一時的にユーザーを切り替え、Unixスタイルの権限を維持します。sudo
、一方、超越ユーザー。それでも正しくアクセスすると、/etc/sudoers
sudo
ほとんどの点で完全に交換でき、ほとんどの同じセキュリティ問題が発生するため、su
最小限のセキュリティコストで便利に実行でき、独自の安全上の問題もさらに発生する可能性があります。私の考えではsu
sudo
これは素晴らしい議論でした。このトピックについて。
しかし、ただスキップして進むとどうなりますか?
CTRL+ ALT+Fn
login: root
または...
ssh root@localhost
何があっても根それでも?