エンジニアではない、ただのWebデザイナーの私なのですが、
[Enter] + [Y] を連打してたら、Amazon EC2、Debianを設定 できちゃったので、
次はいよいよ、FTPの設定をしてみます。
まずは、vsftpのインストールと、FTPの設定から。
EC2へSSHログイン
# ssh -i EC2key.pem root@ec2-XXXX.amazonaws.comvsftpdをインストール
# apt-get install vsftpd[Y/n]? と聞かれるので
# YFTPコマンドをインストール
# apt-get install ftp[Y/n]? と聞かれるので
# YFTPランレベルを確認
chkconfig --list vsftpd
コマンドが使えないって言われる。(´・ω・)chkconfigコマンドをインストール
# aptitude install chkconfig[Y/n]? と聞かれるので
# YFTPランレベル確認に再挑戦
chkconfig --list vsftpd
vsftpd 0:off 1:off 2:on 3:on 4:on 5:on 6:off となればOKOS再起動時に自動的にvsftpdを実行させる
# chkconfig vsftpd on21 番ポートが LISTEN されているか確認
# netstat -lnptg
tcp 0 0 0.0.0.0:21 0.0.0.0:* LISTEN 1965/vsftpd となればOK使われていないポートを確認する
# cat /proc/sys/net/ipv4/ip_local_port_range
32768 61000が開いてると言われるのでメモ
![]()
次は、設定ファイル「vsftpd.conf」の変更。場所は、/etc/の中に格納されています。
etcディレクトリに移動する
# cd etc念のため、vsftpdの設定ファイ「vsftpd.conf」のバックアップ作成
# cp -p vsftpd.conf vsftpd.conf.backupnanoエディタで「vsftpd.conf」を編集
# nano /etc/vsftpd.conf14行: listen=YES
23行: anonymous_enable=NO
26行: local_enable=YES
29行: write_enable=YES
33行: local_umask=022
52行: connect_from_port_20=NO
62行: xferlog_file=/var/log/vsftpd.log
65行: xferlog_std_format=NO
68行: idle_session_timeout=600
71行: data_connection_timeout=120
90行: ascii_upload_enable=YES
91行: ascii_download_enable=YES
105行: chroot_local_user=YES
110行: chroot_list_enable=YES
112行: chroot_list_file=/etc/vsftpd.chroot_list
133行: #pam_service_name=vsftpd
137行: #rsa_cert_file=/etc/ssl/certs/vsftpd.pem
末尾に追加: use_localtime=YES
末尾に追加: pasv_enable=YES
末尾に追加: pasv_addr_resolve=YES
末尾に追加: pasv_min_port=60000
末尾に追加: pasv_max_port=61000
末尾に追加: force_dot_files=YES
末尾に追加: pasv_address=00.00.00.00(EC2の固定IP)
![]()
pasv_min_port=60000
pasv_max_port=61000
cat /proc/sys/net/ipv4/ip_local_port_range した時に
開いてるって言われたポートを指定 force_dot_file — 「.」から始まるファイルを表示する
pasv_addres — PASV接続用に Amazon EC2の固定IPを指定しておく
他にも設定しなくちゃいけないファイルがあるみたい…。
まずは、FTPアクセス禁止ユーザを「ftpusers」に指定する。
とりいそぎ、rootでFTPアクセスできるようにしておきたいので
nanoエディタで「ftpusers」を編集
# nano /etc/ftpusers
↓↓2行目の rootの前に「#」をつける# /etc/ftpusers: list of users disallowed FTP access. See ftpusers(5).
# root
daemon
bin
sys
sync
games
man
lp
mail
news
uucp
nobody
内容を保存して、nanoエディタを終了する
[ctrl]+x (controlキーと「x」を同時に押す)
Save modified buffer ?と聞かれたら
y と打って [Enter]
次に、上位ディレクトリに移動させたくないユーザを「vsftpd.chroot_list」に指定する
nanoエディタで「vsftpd.chroot_list」を編集
# nano /etc/vsftpd.chroot_list空のファイルが開くので何も入力せずに内容を保存して、nanoエディタを終了する
[ctrl]+x (controlキーと「x」を同時に押す)
Save modified buffer ?と聞かれたら
y と打って [Enter]
最後に、FTPアクセスを許可するユーザを「vsftpd.chroot_list」に指定する
nanoエディタで「vsftpd.user_list」を編集
# nano /etc/vsftpd.user_listrootユーザのFTPアクセスを許可したいので
root内容を保存して、nanoエディタを終了する
[ctrl]+x (controlキーと「x」を同時に押す)
Save modified buffer ?と聞かれたら
y と打って [Enter]
rootユーザで FTP接続できるか確認する
vsftpd.confを再起動!
# /etc/init.d/vsftpd restart恐る恐るFTP接続...
# ftp localhostName (localhost:root): と言われたので
# root331 Please specify the password. と言われたので
# rootのパスワード 230 Login successful. と出ればFTPアクセス成功!現在地を調べる
ftp > pwd
var/www と出ればOK。何があるか調べる
ftp > ls
index.html が見えればOK。ftpコマンド終了
ftp > bye
![]()
ヤベー、とうとうEC2でFTPアクセスまで可能にしてしまった!! (◎_◎;)
エンジニアではない、ただのWebデザイナーの私なのに?!
関連エントリー
- こんなにスゴイぞ、Amazon EC2
- Amazon Web Service、アカウントを取得してみた
- Amazon EC2/S3を申し込んでみた
- Amazon EC2、X.509証明書を取得してみた
- AWS Management Consoleで Key Pairsを取得してみた
- Mac OSXでAmazon EC2 Command-Line Toolsを使ってみた
- Amazon EC2、インスタンスを立ち上げてみた
- Amazon EC2、SSHでログインしてApacheを起動してみた
- Amazon EC2、Debianを設定してみた
- Amazon EC2、DebianでFTP(vsftpd)設定
- Amazon EC2のイメージファイルをS3に保存する
- Amazon EC2で固定IPを取得する
- Amazon EC2を独自ドメインで使う
- Amazon EC2をバーチャルドメインで運用する
- Amazon EC2、EBS(Elastic Block Store)を使ってみた
- Amazon EBSで Apache2とmysqlを動かしてみた
- Amazon CloudFront でちょっぱやを実装してみた
- Amazon EC2、AMIを共有する
- Amazon EC2上でインスタンスをオートスケールできる「Wakame」
- [ 非常事態宣言!!] Amazon EC2、ホームページが消えました
- Amazon サポートセンターに連絡を取ってみた
- Amazon EC2、SSH(22番ポート)の設定方法はこうすべき!
Amazon EC2、DebianでFTP(vsftpd)設定へのコメント数: 4

私も顧客の依頼でAmazonEC2を検討しています。
顧客の依頼でFTPを使用しなければいけないのですが、
EC2でFTPを構築してもインスタンスを停止させたら、
データは消えてしまうかと思いますが、
ファイル自体のバックアップはどうしてますか?
EBSを使用しているとか、定期的にS3にバックアップとか。
でもそもそもS3をFTP感覚で使用してもいいのでは?
と最近思ったりしました (^^;
>t-satoさん
こんにちは。はじめまして。(^-^)ノ
ご質問の件ですが、
DBを含むWebコンテンツのデータはEBSに保存しています。
もちろん定期的なS3へのバックアップと、
EBSのスナップショット作成も定期的に実施しています。
私の認識している限り、
S3はCNAMEは割当られるけどWebサーバにはならないので…
「そもそもS3をFTP感覚で使用してもいいのでは?」
というご意見の真意を理解しかねています。(^-^;)
以下、ぷち情報ですが
私の周りのエンジニア達は、EC2上でFTPポートを開放することに
セキュリティ的にみんな大反対しているので、
私も今はFTPをやめて、SSH(SFTP)だけにしています。
そのあたり、私は全然詳しくないのですが…
ぜひセキュリティのこともお客様とお話し合いいただいた方が
いいかもしれませんね。
やはりEBSの使用しかないのですねー。
ご意見有難う御座います。
FTPって私の経験上、
レンサバのDocumentRootにHTMLとかのファイルあげたりとか、
提携している顧客からの何らかのCSVデータだったりとか、
結局の所、それらってFTPサーバ立てなくてもS3で完結するよねーっていうことで、
「そもそもS3をFTP感覚で使用してもいいのでは?」
って思ったりしました。
あと、S3に画像とかアップした際に、
画像のURLにアクセスしたら閲覧できると思いますが、
その時点でれっきとしたwebサーバになってると思うんですよねー。
ヘッダーもきちんと返してくれますし。
デフォルトで遅いのがネックですが、
静的なファイルを置くには良いwebサーバになってくれるかと思いますよ。
例えば、CNAMEでimage.hogehoge.comとかにして、
イメージサーバにスケールアウトさせちゃうとか。
>t-satoさん
こんにちは。
そうですねー、おっしゃるとおり
スタティックなGIF、html、CSVをアップ→閲覧だけで良いのであれば
S3だけで完結もアリだと思います。(^-^)
Web制作のお仕事では、ブログや、ネットショップなど
ダイナミックなWebコンテンツを構築するので、LAMP環境が必須なので、
私のような業界どっぷり人間は、
動的に動かせること=Webサーバ(EC2)
静的なファイル置き場=ファイルサーバ(S3)
という認識になっちゃうのかな?
S3は、CloudFrontを活用すると感動を味わえますよ〜。(^-^)
http://www.studio-fix.com/blog/kaoru/2009/04/13/post166/
NEW ENTRY
ARCHIVE
カテゴリー
TAG CLOUD