端末を開き、SSHを実行してユーザーを切り替える

端末を開き、SSHを実行してユーザーを切り替える

GNOME端末を開いた後、次のようにしてSSHを介してリモートホストに接続しました。

gnome-terminal -- bash -c "ssh -i ~/.ssh/virtual_machines remote@remotehost; exec bash;"

しかし、SSH経由でリモートホストに接続すると、sudo su testvisudoにコマンドを追加しました。

%wheel  ALL=(ALL)       NOPASSWD:/bin/su test

テストに切り替えると、テストユーザーはプログラムを起動し、そのプログラムを保持します。

.bashrcファイルの変更は、そのユーザーとしてSSHを使用し、プログラムが自動的に起動したくないため、オプションではありません。

ベストアンサー1

セッションとして実行されるログインシェルをgnome-terminal起動するウィンドウ/タブを起動するとします。testremotehost

gnome-terminal -- ssh -i ~/.ssh/virtual_machines -t remote@remotehost 'exec sudo -iu test'

suと組み合わせると、sudo私には少し愚かなように聞こえます。何ができるかをsudo定義suでき、誰が何をできるかを定義するための柔軟性を高めます。

%wheel  ALL=(test) NOPASSWD: ALL

グループ内のすべてのユーザーは、wheelasを含むパスワードプロンプトなしでユーザーとして任意のコマンドを実行できます。testsudo -i -u testtest

おすすめ記事