AWS EC2に新しいSSHアカウントを作る

EC2にSSH接続用のユーザーを作成する

を参考に、鍵を作ったが、

「No supported authentication methods available」というエラーで、
先に進めず、ドツボにはまる。

.sshや、authorized_keysのパーミションは、既に変更済み。
もちろん、passwd / groupにも、対象アカウントは追加済み。

 

AWS公式に則って、再び再設定。

キーは、EC2 > Network & Security > Key Pairsから生成し、
秘密鍵を、WinSPCに入れ、公開鍵をEC2に保存。

 

/etc/passwdの書き間違い

:がずれていたのを見つけ、修正したところ、

fatal: Access denied for user username by PAM account configuration [preauth]

という、エラーに変わる。

https://ma.ttias.be/ssh-fatal-access-denied-user-pam-account-configuration-preauth/

 

/etc/shadow

初めて見たが、パスワードを保存するファイルらしく、
こっちにもユーザーがないと、通らないっぽい。

 

/etc/passwdと/etc/shadowの編集

/etc/passwdと/etc/shadowファイルについてのまとめ

/etc/passwdを書き換える専用のツールまであるなんて、知らなかった。。。

vipw -s

にて、新しいユーザーを追加したところ、

 

無事ログイン成功!!

 

長かった。。。

PS

EC2-USERのままでも良かったのですが、
Syncthingを使って同期している関係で、実行ユーザーが1000:1000となり、
ec2-userのパーミッションだと、弾かれたりと、面倒で。
※php-fpmは、1000:1000で実行

1000:1000のユーザーで、ログインしたかったんです。

元はと言えば、Syncthiungが、
500:500で動いてくれれば言うことないのですが、
Dockerfileを修正して、buildすると、
Alpineにも関わらず、数GBのサイズになり、諦めた次第です。

/bin/entrypoint.shで、

#!/bin/sh
set -eu
chown "${PUID}:${PGID}" /var/syncthing \
  && exec su-exec "${PUID}:${PGID}" \
   env HOME=/var/syncthing \
     /bin/syncthing "$@"

${PUID}、$PGIDを500:500に書き換えるため、

export PUID=500 PGID=500
env PUID=500 PGID=500

など試したり、
直接500:500にしたんですが、リスタートを繰り返すばかりで。

 

AmazonLinux2にするまでの辛抱なので、
1000:1000でWinSPCにログイン出来たことにより、
随分と作業が楽になります♪

-

ECCUBE3系 x AWS SESの設定でハマる

GmailのSMTPを使って送信する例は、いくつもありましたが、
「AWS SES ECCUBE3」の回答は見つからず、
みんな素直に通っているのか、はたまたAWS SESを使っていないのか?

array (
	'mail' => array (
		'transport' 	=> 'smtp',
		'host'			=> 'email-smtp.us-west-2.amazonaws.com',
		'port'			=> '587',
		'username'		=> 'IEAKIAYEZGHVUEW7QERA',
		'password'		=> '*************************',
		'encryption'	=> NULL,
		'auth_mode'		=> NULL,
		'charset_iso_2022_jp'	=> false,
		'use_spool'		=> true
	)	)

※ドメインによって、動的に設定を変えているので、YMLは使っていません。

な設定で、SESなどと3日ほど格闘しました。

***

EC-CUBE 2系から SES でメールを送信する

2系統なんで、信用していませんでしたが、
(というか、2系統はhost/portともに、上記で動いているので)

  • SMTP_HOST を “tls://email-smtp.us-west-2.amazonaws.com” に設定
  • SMTP_PORT を “465” に設定

に設定してみたところ、無事送信!

とりあえず、動いたらいいので、
これ以上追求は、あしからず。

参考

AWS SES 設定 >> https://www.ritolab.com/entry/72

-