ec2インスタンスに最初からパスワード認証でログインする方法(あとssh接続のポート番号変更)
はじめに
普通は鍵認証でしかec2インスタンスにログインできないのが面倒なのでパスワード認証でログインする方法をメモしときます。
あとイントラから22portでのアクセスが許可されていないのでssh接続のポート番号も変更しておきます。
AmazonLinux2ですべてユーザーデータで設定します。
ユーザーデータ
ユーザーデータ入力時に「テキストで」を選択し、以下の内容を入力してインスタンス起動。
※passwordのxxxのところに任意のパスワードを入力してください。
※ポート番号を変更しないならruncmd以下は入力しないでください。
#cloud-config ssh_pwauth: yes password: xxx chpasswd: { expire: false } runcmd: - sed -i -e 's/#Port 22/Port 443/' /etc/ssh/sshd_config - /etc/init.d/sshd restart
runcmdのところで/etc/init.d/sshd restart
したので、これでいけると思ったんですがインスタンスを起動してすぐssh接続はうまくいかず...
そのままインスタンスを一回停止して再度起動することで443ポートのパスワード認証でssh接続できました。(ユーザー名はec2-user)
ちょっとモヤりますが、まぁやりたいことができたのでいいか...
メモ
cloud-config関係の機能を使う場合は以下のリンクから調べてみる。
Documentation — Cloud-Init 18.5 documentation
今回使ったのは Modules のページの Set Passwords。
https://cloudinit.readthedocs.io/en/latest/topics/modules.html#set-passwords