cloud init configを使用して/etc/ssh/sshd_configのデフォルト値を変更します。

cloud init configを使用して/etc/ssh/sshd_configのデフォルト値を変更します。

Ubuntu18 VMは/etc/ssh/sshd_configに次のデフォルト設定でデプロイされており、5分間アクティビティがないとSSHセッションが終了します。

ClientAliveInterval 300
ClientAliveCountMax 0

より高い値でデプロイするには、cloud_init.cfgにどの設定を追加する必要がありますか?セキュリティは問題ではありません。

修正する:アイドルSSHセッションは5分以上続くので、これをcloud_init.cfgに追加するとUbuntu16とUbuntu18の問題が解決するようです。

write_files:
  - path: /etc/ssh/sshd_config
    content: |
         ClientAliveInterval 30000
         ClientAliveCountMax 50

ただし、通常/etc/ssh/sshd_configファイル内の他のすべてのパラメータは失われます。偶然他の場所にあるこのsshd設定ファイルと同等のものはありますか?それでは、フルパスとファイル名は何ですか?これら2つの値はどのように生成されますか?編集済み他のすべてをそのまま維持しますか?

よろしくお願いします!

ベストアンサー1

@dandreyeを展開すると、これらの項目をコメントアウトでき、現在の値に関係なく正しいオプションを設定できることを検討してください。

runcmd:
  - sed -i 's/\#\?ClientAliveInterval .\+/ClientAliveInterval 30000/' /etc/ssh/sshd_config
  - sed -i 's/\#\?ClientAliveCountMax .\+/ClientAliveCountMax 50/' /etc/ssh/sshd_config
  - service ssh restart

しかし、より良いオプションは、不要なオプションをコメントアウトし、カスタム設定をsshd_config.dに配置することです。

write_files:
  - path: /etc/ssh/sshd_config.d/00-cloud-init
    content: |
      ClientAliveInterval 30000
      ClientAliveCountMax 50

runcmd:
  - sed -i 's/\#\?\(ClientAliveInterval .\+\)/#\1/' /etc/ssh/sshd_config
  - sed -i 's/\#\?\(ClientAliveCountMax .\+\)/#\1/' /etc/ssh/sshd_config
  - service ssh restart

おすすめ記事