SFTPというレガシーだけど、今もよくシステムで使われる名前のついたサービスが目に止まったので、検証してみました。
発表されたサービス名はAWS Transfer for SFTP
terraformがこのサービスに対応してなかった(当たり前か^^;)ので、渋々マネコンでポチポチしました...
手順
SFTP Serverの作成
-
Custom hostname
にAmazon Route53 DNS alias
を選択し、管理しているドメインを記述するとRoute53に自動定義されるようです。 - LDAP及びActiveDirectoryをAPIGateway経由で利用できるようです。
ユーザ作成画面では接続に用いる任意のpublic-keyを貼り付けて、ユーザのホームディレクトリになるS3bucketを記述します。
接続確認
- レコードが定義されているか確認する
$ aws route53 list-resource-record-sets --hosted-zone-id xxxxxxxxxxxx | jq '.ResourceRecordSets[].Name' | grep "xxxxxx"
"xxxxxx.org."
- 接続してみる
$ sftp -i ~/.ssh/transfer-key kazu@xxxxxxx.org
Connected to xxxxxxx.org.
sftp> ls -l
-rwxr--r-- 1 - - test
sftp>
料金
- EC2インスタンスが起動しているし、何よりもフルマネージドなので、それを考えたら妥当な価格かも。
Pricing by region | Pricing is the same across all AWS regions where AWS SFTP is available |
---|---|
Time your SFTP endpoint is provisioned | $0.30 per hour |
SFTP data uploads and downloads | $0.04 per gigabyte (GB) transferred |
- 1GB使用の想定で24時間30日稼働させたとして...$228
$0.30 * 24 hours * 30 days = $216
$0.04 * 1 GB * 30 days = $12
$216 + $12 = $228.