suコマンド 【substitute user identity】 switch user
概要
suコマンド(substitute user identity)とは、主にUNIX系OSで用いられるコマンドおよびプログラムの一つで、他のユーザーの権限でシェルを操作するもの。一般ユーザーが管理者(rootユーザー)としてシステム管理を行いたい場合によく用いられる。引数としてオプションと、誰の権限で実行したいかをユーザー名で指定する。ユーザーの指定を省略すると管理者である「root」ユーザー(スーパーユーザー)を指定したものとみなされる。実行するとパスワード入力が促され、指定したユーザーのパスワードを入力すると権限が切り替わり、以降はそのユーザーとしてプログラムを起動できる。
UNIX系システムでは遠隔からの管理権限の奪取を避けるため、rootユーザーによる直接ログインを禁じた状態で運用されることがあり、そのようなシステムではいずれかの一般ユーザーでログイン後、suコマンドでroot権限を得て管理操作を行う。攻撃者はsuが許可された一般ユーザーを乗っ取らなければrootへの攻撃を開始できない。
一方、ユーザーの切り替えは行わず、単体のコマンド実行を別のユーザー権限で行うコマンドを「sudo」(substitute user do)という。一般ユーザーにrootとしての全権を委任せず、限定された特定の操作のみを許可したい場合にはこちらを使う。
(2020.8.7更新)