[アップデート]SFTPコネクタにセキュリティポリシーの設定が追加されました

2024.04.08

初めに

先日のアップデートにてSFTPコネクタの作成時にセキュリティポリシーが指定できるようになりました。

SFTPコネクタにおけるセキュリティポリシーはALBやNLBのセキュリティポリシーのSSH版のようなもので、利用する暗号化方式や鍵署名のアルゴリズムの所定の設定から選択することができます。

現在はTransferSFTPConnectorSecurityPolicy-2024-03TransferSFTPConnectorSecurityPolicy-2023-07の2つが存在しTransferSFTPConnectorSecurityPolicy-2024-03がデフォルトとなっております。

利用できるアルゴリズムの違いについては以下ページをご参照ください。

設定

作成時に以下の箇所で指定を行います。作成後も変更することは可能です。

また既存のSFTPコネクタについてはデフォルトのTransferSFTPConnectorSecurityPolicy-2024-03が割り当てられていることが確認できました。

以前の記事執筆時の画面

本記事執筆時点(2024/04/08)での画面。赤枠の部分が増えています。

実際に接続してみる

TransferSFTPConnectorSecurityPolicy-2024-03で非対応となっているaes128-ctrを暗号化アルゴリズムとして利用するように設定し接続してみます。

接続先となるサーバ側のsshdの設定を以下のように変更しaes128-ctrによる暗号化のみを許可するように変更しておきます。

# diff -uBb /etc/ssh/sshd_config.bk /etc/ssh/sshd_config
...
 AuthorizedKeysCommand /opt/aws/bin/eic_run_authorized_keys %u %f
 AuthorizedKeysCommandUser ec2-instance-connect
+
+Ciphers aes128-ctr

この状態でマネジメントコンソールからテスト接続を実行してみます。

サーバ側ではaes128-ctrのみを許可しているのにも関わらずクライアント(SFTPコネクタ側)がサーバ側に伝えた利用可能なアルゴリズム内にaes128-ctrが含まれていないため接続時に以下のようなエラーが発生することが確認できます。

サーバ側のsecureログを確認しても同様のことが確認可能です。

Apr  8 05:43:11 ip-192-168-4-25 sshd[3256]: Did not receive identification string from 13.114.219.80 port 13006
Apr  8 05:43:11 ip-192-168-4-25 sshd[3257]: Unable to negotiate with 13.xxx.xxx.xxx port 42659: no matching cipher found. Their offer: aes256-gcm@openssh.com,aes128-gcm@openssh.com,aes256-ctr,aes192-ctr [preauth]

セキュリティポリシーをaes128-ctrに対応しているTransferSFTPConnectorSecurityPolicy-2023-07に変更することで成功するようになります。

終わりに

SFTPコネクタでも利用するアルゴリズムの選択が所定のセットの範囲内となりますが選択可能となりました。

これによりSFTPコネクタでも環境に応じて各種アルゴリズムの後方互換的な選択ができるようになりなかなかミドルウェア等の刷新を進められないような環境でも利用が続けられるようになりました。

とはいえ(相対的なものも含め)強度の低い各種アルゴリズムを利用を続けることは通信の安全性の面を見ると好ましいとはいえませんのでできる限り最新のポリシーを選択するようにし環境に応じ必要であれば幅広く対応しているポリシーを選択するようにしましょう。