Ubuntuサーバーの設定を変更するスクリプトを作成しています。
内部には次の行があります。
sudo sed 's/PasswordAuthentication yes/PasswordAuthentication no/' /etc/ssh/sshd_config
問題は、この変化が持続しないということです。ただ「いいえ」を「はい」に戻すだけです。
コマンドが実行されると、変更されたファイルは端末にすぐに「No」と表示されますが、ファイルをcatまたはvimで開くと再び「Yes」と表示されます。
また、vimでsshd_configを開いて手動で変更することができ、変更はまだ問題ありません。
どんなアイデアがありますか?
ありがとうございます。
答え1
-i
スイッチを使用してコマンドを開始します。
sudo sed -i 's/PasswordAuthentication yes/PasswordAuthentication no/' /etc/ssh/sshd_config
~からman sed
-i[SUFFIX], --in-place[=SUFFIX]
edit files in place (makes backup if extension supplied).
The default operation mode is to break symbolic and hard links.
This can be changed with --follow-symlinks and --copy.