使用したインスタンスのイメージですが、『Basic 32-bit Amazon Linux AMI 2011.02.1 Beta (AMI Id: ami-300ca731)』を使用しました。
管理者権限になる
インストールと設定は管理者権限で行いますので権限を取ります。
$sudo su -
vsftpdのインストールと設定ファイルの編集
yumを使ってvsftpdをインストールします。-yオプションを付けて確認を省略しています(全てyes)。
#yum -y install vsftpd
インストールが完了したら、次に使われていないポート番号を確認します。32768~61000までが空いていることが分かります。
#cat /proc/sys/net/ipv4/ip_local_port_range 32768 61000
設定ファイルを編集します。
#vi /etc/vsftpd/vsftpd.conf
修正 | anonymous_enable=NO | 匿名ユーザーのログインは許可しない |
修正 | dirmessage_enable=NO | ユーザが新しいディレクトリに初めて移動したとしてもメッセージは表示しない。 |
修正 | ascii_upload_enable=YES | アスキーモードのアップロードを有効にする。 |
修正 | ascii_download_enable=YES | アスキーモードのダウンロードを有効にする。 |
修正 | chroot_local_user=YES | ローカルユーザーのルートを各自のホームに変更する。 |
修正 | chroot_list_enable=YES | chroot_listを有効にする。ファイルはデフォルト(chroot_list_file=/etc/vsftpd/chroot_list)になる。 |
修正 | tcp_wrappers=NO | ホストへのアクセスを制御しない。(EC2のSecurity Groupsで指定したほうが設定しやすい) |
修正 | connect_from_port_20=NO | ActiveFTPを無効にする。 |
修正 | xferlog_std_format=NO | wu-ftpdではなく、vsftpdログ形式でログを記録する。 |
追加 | pasv_enable=YES | PASV FTPを有効にする。 |
追加 | pasv_addr_resolve=YES | PASVモード接続先IPアドレスをホスト名から取得する。 |
追加 | pasv_address=固定IP | ElesticIPを設定する。(インスタンスのPublic DNSを指定するとPASVモードでの接続はできない。バージョン2.0.4以降であれば、IPが固定でなくても pasv_addressにDDNSを書くことで動的なIPに対応できるらしいが未確認。) |
追加 | pasv_min_port=60001 | PASVモード接続時の最小ポート番号。(確認した空きポートの範囲で設定) |
追加 | pasv_max_port=60010 | PASVモード接続時の最大ポート番号。(確認した空きポートの範囲で設定) |
追加 | use_localtime=YES | ローカルタイムを使用(デフォルトはGMT) |
追加 | force_dot_files=YES | .(ドット)で始まるファイルを隠さない。 |
次に chroot_list ファイルを作成して、ルートを変更しないユーザーを指定します。
ここで指定されたユーザーは、ルートディレクトリにアクセスできるようになりますので、rootなど特別なユーザーのみ指定してください。とりあえず空にしておいてもかまいません。
ここで指定されたユーザーは、ルートディレクトリにアクセスできるようになりますので、rootなど特別なユーザーのみ指定してください。とりあえず空にしておいてもかまいません。
#vi /etc/vsftpd/chroot_list
ユーザーの作成
ローカルユーザーを作成してパスワードを設定します。FTPでサーバーに接続する際にこのユーザーとパスワードを入力することになります。
#adduser webuser #passwd webuser
サービスの起動、OS起動時にvsftpdを自動実行させるための設定
serviceコマンドでサービスを起動します。自動起動の設定はchkconfigコマンドにより行います。
#service vsftpd start #chkconfig vsftpd on
0 件のコメント:
コメントを投稿