個人的プログラムの備忘録

プログラム初心者の自分の為に書く備忘録なのでこのサイトに載っているコードで不具合が起きても責任は取れませんので自己責任でお願いします。

AWSのEC2でFTPを使う

      2016/02/14

AWSを使っているとターミナルでの作業がメインになるが、自分一人なら特に問題を感じないが複数人でのプロジェクトになるとFTPでの作業ができた方が何かと良かったのでFTPを導入してみる。
前提としてEC2のインスタンスは立ち上げてある物とする。

ターミナルでの作業

EC2にSSHで接続

ssh -i xxxxx.pem ec2-user@ec2-XXXXXXXXXXXXXXXXXX

管理者権限(rootユーザー)になる

$sudo su -

vsftpdのインストール

#yum -y install vsftpd

インストール出来たら使われていないポート番号を確認する。

#cat /proc/sys/net/ipv4/ip_local_port_range
32678   61000

vsftpd.conf(設定ファイルを編集する)

#vi /etc/vsftpd/vsftpd.conf
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
pasv_enable=YES
pasv_address=固定IP(ElasticIPs)
pasv_min_port=60000
pasv_max_port=60010
force_dot_files=YES
use_localtime=YES
に追加、修正する。

FTP用にユーザー作成

ここで作成したユーザーとパスでFTPに接続する

#adduser 任意の名前
#passwd 任意の名前入力後パスワード入力

サービス起動、自動実行設定

#service vsftpd start
#chkconfig vsftpd on

AWSコンソールでの作業

Security Groupsでのポート設定

vsftpdをインストールしたインスタンスのポートを設定する。
AWSコンソール→EC2→Security Groups→Inbound→Editで設定できる。
AWS

以上で設定完了。
後はFTPクライアントで接続できるか確認する。
当方はFileZillaで接続できた。
いや~やはりFTPは慣れてるか使いやすくて楽ですな~。

※追記
なにやらFTPからワードプレスにアップロードしようとしたら553 Could not create file.というエラーが起きた。
ダウンロードは出来るのにアップロードができない。
色々調べて見るとファイルのパーミッションの書き込み権限がなくエラーをしているみたい。
じゃあパーミッション777とかに変えれば楽勝ジャン!と思ったら大間違い…
変更しても全くアップできない。

なぜ???

ファイルからディレクトリから変更して見るもだめ。
調べても調べてもパーミッション変更やらグループ変更だったりばかりで、同じような例ばかり。
変更しても毎度毎度553…orz
どうしたものかと思い、ふと前に作ってもらったAWSがあることに気付きSSHでつないで中身を比較した。
そしたら案の定、違いを発見。
どうやら、AWS構築したときにワードプレスのディレクトリの所有者をapacheに変更してたのが原因みたい。
とりあえずワードプレスのテーマのディレクトリごと所有者をFTPユーザーに変更したらあっさりアップできた。
パーミッションが原因ではあるが、まさかそこが原因とは。
詳しくはなぜそうなのかはわからないが、とりあえず一安心。
ほんと、サーバー関連は難しいわ…

 - AWS, Wordpress

Sitio web optimizado por: Posicionamiento en Google
Plugin Modo Mantenimiento patrocinado por: Wordpress modo mantenimiento