AWS Transfer Family S3向けのSFTP対応サーバー
2021/09/12
S3バケットは作成済です。
目次
IAMロールの作成
1 2 3 4 5 6 7 8 9 10 11 12 13 |
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "transfer.amazonaws.com" }, "Action": "sts:AssumeRole" } ] } |
IAMロール作成時にTransferを選択するとtransfer.amazonaws.comの信頼ポリシーができました。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowListingOfUserFolder", "Action": [ "s3:ListBucket" ], "Effect": "Allow", "Resource": [ "arn:aws:s3:::yamashita-transfer" ] }, { "Sid": "HomeDirObjectAccess", "Effect": "Allow", "Action": [ "s3:PutObject", "s3:GetObject", "s3:DeleteObject", "s3:DeleteObjectVersion", "s3:GetObjectVersion", "s3:GetObjectACL", "s3:PutObjectACL" ], "Resource": "arn:aws:s3:::yamashita-transfer/*" } ] } |
実行ポリシーはユーザーガイドのとおりで作成しました。
SSHキーの作成
1 2 3 |
ssh-keygen -P "" -m PEM -f aws-ft chmod 600 aws-ft |
macOSで作成しました。
後でSFTP対応サーバーのユーザー追加でaws-ft.pub(公開鍵)の内容を貼り付けます。
aws-ft(秘密鍵)は認証時に使用します。
SFTP対応サーバーの作成
プロトコル選択でSFTPを選択しました。
IPプロバイダーでサービスマネージドを選択しました。
エンドポイントのタイプはパブリックアクセス可能にしました。
ドメインでS3を選択しました。
CloudWatch ログ記録では、新しいロールを作成しました。
暗号化アルゴリズムはデフォルトのままです。
作成されたサーバーを選択して、[ユーザーを追加]ボタンを押下しました。
ユーザー名を入力してあらかじめ作成しておいたTransfer用のIAMロールを指定しました。
追加でポリシーでの権限の絞り込みができるようですが、今回はこのままにしました。
ホームディレクトリであらかじめ作っておいたS3バケットを選択しました。
ユーザー名と同じプレフィックスが自動的に設定されました。
[制限付き]にチェックしたことで指定したプレフィックス以下しかコントロールできなくなります。
接続テスト
1 2 3 4 5 6 |
sftp -i aws-ft yamashita@s-074dd40c9cd84fdb8.server.transfer.us-east-1.amazonaws.com Warning: Permanently added the RSA host key for IP address '44.193.96.237' to the list of known hosts. Connected to s-074dd40c9cd84fdb8.server.transfer.us-east-1.amazonaws.com. sftp> put sftp-test.txt |
オブジェクトがアップロードされていました。
最後までお読みいただきましてありがとうございました!
「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。

「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。

「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。

「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。

「AWSではじめるLinux入門ガイド」という本を書きました。


開発ベンダー5年、ユーザ企業システム部門通算9年、ITインストラクター5年目でプロトタイプビルダーもやりだしたSoftware Engineerです。
質問はコメントかSNSなどからお気軽にどうぞ。
出来る限りなるべく答えます。
このブログの内容/発言の一切は個人の見解であり、所属する組織とは関係ありません。
このブログは経験したことなどの共有を目的としており、手順や結果などを保証するものではありません。
ご参考にされる際は、読者様自身のご判断にてご対応をお願いいたします。
また、勉強会やイベントのレポートは自分が気になったことをメモしたり、聞いて思ったことを書いていますので、登壇者の意見や発表内容ではありません。
ad
ad
関連記事
-
-
試したい事があるのでAWS でとりあえずAmazon Linuxのサーバを作る
1年間の無料キャンペーン期間中に検証する とある勉強会でせっかくAWSのアカウン …
-
-
AWS Control TowerにOUを追加する
AWS Control TowerにOUを追加する 管理アカウントでAWS Co …
-
-
Amazon Connect 発信イベントをEventBridgeで確認
Amazon Connectから発信した電話に出たのか、出なかったのかを確認した …
-
-
cfn-initでEC2インスタンスにPHPをインストールしWebサーバーを起動する
AWS CloudFormation による Amazon EC2 へのアプリケ …
-
-
AWS Transit Gatewayピアリング接続確認
AWS Transit Gatewayのピアリング接続を使用して、異なるリージョ …
-
-
「X-Tech JAWS 【第2回】~9割のX-Techと1割の優しさで切り拓く未来~」に行ってきました
「X-Tech JAWS 【第2回】~9割のX-Techと1割の優しさで切り拓く …
-
-
AWS CloudHSMを起動してみました
なかなか触る機会のないサービス、CloudHSM。 起動してみました。 手順はユ …
-
-
AWS Well-Architected フレームワークによるクラウド ベスト プラクティスのセッションを聞いたので自アカウントの環境を確認してみる
AWS Summit Tokyo 2017で「AWS Well-Architec …
-
-
Amazon SESでメール受信
Amazon SES(Simple Email Service)にメールドメイン …
-
-
CodeBuildで執筆原稿データをまとめた
今書いている原稿に対して編集者さんから、「できればで構わないのですが、章ごとにマ …