makotton.com

AWS EC2にFTPサーバをインストール

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので十分ご注意ください。

■前提条件

・OS(AMI):Amazon Linux
・ftpサーバ:vsftpd
・デフォルトユーザ(ec2-user)でログイン
・Elastic IPはアサイン済み

※インストール手順は用途、環境に合わせて読み替え、もしくは、変更してください。

■手順

(1) セキュリティグループにてポートを設定を行う

AWSのコンソールからEC2 Dashboardに遷移し、NETWORK & SECURITYカテゴリのSecurityGroupSを選択します。次に当該インスタンスに紐付けているセキュリティグループ選択して詳細画面を開いたら、Inboundタブを選択してEditボタンを押下します。

以下のルールを追加します。

Custom TCP Rule | TCP | 21 | Anywhere 0.0.0.0/0
Custom TCP Rule | TCP | 60000 – 60010 | Anywhere 0.0.0.0/0

追加したらSaveボタンを押下します。

※Source項目は任意で選択および入力してください。この例ではAnywhereで進めます。
※なお、空きポートに関しては以下のコマンドで確認してください。

[bash gutter=”0″]
# cat /proc/sys/net/ipv4/ip_local_port_range
[/bash]

 

(2) vsftpdをインストールする

[bash gutter=”0″]
# yum -y install vsftpd
Loaded plugins: fastestmirror, priorities, security, update-motd
Loading mirror speeds from cached hostfile
* amzn-main: packages.*****.amazonaws.com
* amzn-updates: packages.*****.amazonaws.com
amzn-main | 2.1 kB 00:00
amzn-updates | 2.3 kB 00:00
Setting up Install Process
Resolving Dependencies
・・・
Complete!
[/bash]

 

(3) コンフィグファイルを編集する

[bash gutter=”0″]
# vi /etc/vsftpd/vsftpd.conf
[/bash]

以下のように変更(追加、コメント外し)します。

[bash]
・・・
anonymous_enable=NO
ascii_upload_enable=YES
ascii_download_enable=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=NO
use_localtime=YES
force_dot_files=YES
pasv_address=***.***.***.*** # Elastic IP
pasv_enable=YES
pasv_addr_resolve=YES
pasv_min_port=60000
pasv_max_port=60010
・・・
[/bash]

chroot機能は必要に応じて有効化してください。その場合は、

[bash]
・・・
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list # デフォルト
・・・
[/bash]

この3項目の追記と /etc/vsftpd/chroot_list ファイルの生成とファイル内部へのユーザ指定(取り急ぎは空でもOK)が必要です。

 

(4) vsftpdを起動する

[bash gutter=”0″]
# service vsftpd start
[/bash]

 

(5) 自動起動設定を行う

[bash gutter=”0″]
# chkconfig vsftpd on
[/bash]

サーバ側はこれでOKです。

 

(6) ftpクライアントからの接続テストを行う

ターミナルからは

[bash]
$ sftp -i ********.pem ec2-user@ec2-**-**-***-***.***************.amazonaws.com
[/bash]

GUIクライアント(例としてcyberduck)からは

このような感じで接続します(鍵指定を忘れずに)。問題なく接続できればOKです。

 

モバイルバージョンを終了