SSH接続用のUbuntuのカスタマイズ

SSH接続用のUbuntuのカスタマイズ

新しいUbuntuサーバーを作成し、rootユーザー内に新しいユーザーを作成しました。私が従ったステップ:

sudo adduser tom

sudo su - tom
mkdir .ssh
chmod 700 .ssh
touch .ssh/authorized_keys
chmod 600 .ssh/authorized_keys
nano .ssh/authorized_keys    // paste public key

大丈夫に見えてログインできます[email protected]。しかし、Tomとしてログインすると権限を要求し、sudoをするとパスワードを要求しますが、Tomのパスワードがないため、rootパスワードを使用するので、次のように警告します。

[sudo]トムのパスワード:トムはsudoersファイルにありません。このイベントが報告されます。

visudo私のrootユーザーからTomを次のように追加しようとしました。

root    ALL=(ALL:ALL) ALL
tom     ALL=(ALL:ALL) ALL

しかし、それは何も変えません。

Tomがジョブを実行する権限を持ち、彼が要求した唯一のパスワードがSSHパスワードであるように設定する正しい方法は何ですか? TomはSSHパスワードを使用してsudo npm install次のタスクを実行する必要がありますsudo composer install。それとも、ルートパスワードでさえ知らなければなりません。

私がここで何を見逃しているのでしょうか?

ベストアンサー1

編集する:

2番目の読み取りによると、まだsudoを使用してTomにパスワードを求めるメッセージを表示するには、次の手順を実行する必要があります。

tom    ALL = ALL: ALL

Tomがパスワードなしでsudoを実行できるようにするには、次の回答を使用してください。


私はあなたがその行を次のようにしたいと思います。

tom    ALL = NOPASSWD: ALL

説明する:

tomはこの行が適用されるユーザー、最初のものはこの行が適用さALLれるホスト、NOPASSWDはパスワードが必要ないことを指定するラベル、最後はALLtomがsudoを介して実行できるコマンドを指定するラベルです。

コマンド(またはコマンドと引数の組み合わせ)を制限したい場合は、2番目のコマンドを渡すことができますALL。たとえば、次のようになります。

tom    ALL = NOPASSWD: /bin/kill, /usr/bin/lprm

よりSudoersのマニュアルページそして代替マニュアルページページの下の約80%に異なる例があります。

おすすめ記事