「Vsftpd」の版間の差分
提供: Wikinote
(新しいページ: 'RHEL の vsftpd について。 == 設定 == /etc/vsftpd/vsftpd.conf で設定を行う。 === デフォルト設定 === RHEL5 のデフォルト設定は以下の通り。...') |
細 (→設定例) |
||
(同じ利用者による、間の4版が非表示) | |||
行46: | 行46: | ||
tcp_wrappers=YES | tcp_wrappers=YES | ||
− | + | その他、主に以下の設定がデフォルトでなされているので注意が必要。 | |
+ | |||
+ | # userlist_enable が有効な場合に読み込まれるファイル。 | ||
+ | userlist_file=/etc/vsftpd/user_list | ||
+ | |||
+ | # userlist_enable が有効な場合、userlist_file に記載されたユーザを拒否するかどうか。 | ||
+ | # NO の場合、許可リストとなる。 | ||
+ | userlist_deny=YES | ||
+ | |||
+ | # ローカルユーザを chroot するかどうか。 | ||
+ | chroot_local_user=NO | ||
+ | |||
+ | # chroot_list_enable が有効な場合に読み込まれるファイル。 | ||
+ | chroot_list_file=/etc/vsftpd/chroot_list | ||
+ | |||
+ | # chroot_list_file で指定したファイルを読み込むかどうか。 | ||
+ | # ★注意:chroot_local_user が有効の場合は、'''chroot しない''' ユーザのリストとなる。 | ||
+ | chroot_list_enable=NO | ||
+ | |||
+ | 上記の暗黙の設定も含めると、デフォルトでのアクセス制御は以下の通りとなる。 | ||
* anonymous, ftp ユーザはログイン可能 (/var/ftp に chroot される) | * anonymous, ftp ユーザはログイン可能 (/var/ftp に chroot される) | ||
行52: | 行71: | ||
** しかし、/etc/vsftpd/user_list あるいは /etc/vsftpd/ftpusers に記載されているユーザはログイン不可 | ** しかし、/etc/vsftpd/user_list あるいは /etc/vsftpd/ftpusers に記載されているユーザはログイン不可 | ||
*** 前者は、デフォルトで <code>userlist_deny=YES</code> のため。 | *** 前者は、デフォルトで <code>userlist_deny=YES</code> のため。 | ||
− | *** 後者は、PAM で拒否リストとして使用されているため。 | + | *** 後者は、PAM で拒否リストとして使用されているため。(/etc/pam.d/vsftpd 参照のこと。) |
+ | |||
+ | === 設定例 === | ||
+ | |||
+ | 以下のポリシーでアクセス制御を行う場合に、デフォルトからどう変更するか。 | ||
+ | # anonymous ログインを不可とする。 | ||
+ | # 指定したユーザのみアクセスを許可し、chroot させる。 | ||
+ | |||
+ | [/etc/vsftpd/vsftpd.conf] | ||
+ | #anonymous_enable=YES ★NO に変更 | ||
+ | anonymous_enable=NO | ||
+ | local_enable=YES ★そのまま | ||
+ | write_enable=YES | ||
+ | local_umask=022 | ||
+ | dirmessage_enable=YES | ||
+ | xferlog_enable=YES | ||
+ | connect_from_port_20=YES | ||
+ | xferlog_std_format=YES | ||
+ | listen=YES | ||
+ | pam_service_name=vsftpd | ||
+ | userlist_enable=YES | ||
+ | tcp_wrappers=YES | ||
+ | |||
+ | userlist_file=/etc/vsftpd/user_list.allow ★追記 | ||
+ | userlist_deny=NO ★上記 userlist_file を許可リストとする | ||
+ | chroot_local_user=YES ★追記 | ||
+ | # どのみち指定したユーザしかログインできないので、 | ||
+ | # リストでの chroot 指定はしていない。 | ||
+ | |||
+ | [/etc/vsftpd/user_list.allow] | ||
+ | hagio ★ログイン許可するユーザ |
2011年2月27日 (日) 11:26時点における最新版
RHEL の vsftpd について。
設定
/etc/vsftpd/vsftpd.conf で設定を行う。
デフォルト設定
RHEL5 のデフォルト設定は以下の通り。
# "anonymous" でのログインを許可するかどうか。"ftp" でもログイン可能になる。 # デフォルトでは、ftp ユーザのホームディレクトリ /var/ftp に chroot される。 anonymous_enable=YES # /etc/passwd にあるローカルユーザのログインを許可するかどうか。 local_enable=YES # ファイルシステムを変更するような FTP コマンドを許可するかどうか。 write_enable=YES # ローカルユーザが生成したファイルの umask 値。 local_umask=022 # ディレクトリを移動した際に、ディレクトリの .messages の内容を見せるかどうか。 dirmessage_enable=YES # ログファイルにアップロードとダウンロードのログを記録するかどうか。 xferlog_enable=YES # PORT でのデータ接続でサーバが送信もとポートに 20(ftp-data) を使用するかどうか。 connect_from_port_20=YES # wu-ftpd と同様の標準的なフォーマットで記録するが、読みづらい。 xferlog_std_format=YES # vsftpd 自身で接続を受け付けるかどうか。xinetd などから起動する場合は NO。 listen=YES # vsftpd が使用する PAM サービス名 pam_service_name=vsftpd # ログインを許可するあるいは拒否するユーザを userlist_file から読み取るかどうか。 userlist_enable=YES # tcp_wrappers のアクセス制御を使用するかどうか。 tcp_wrappers=YES
その他、主に以下の設定がデフォルトでなされているので注意が必要。
# userlist_enable が有効な場合に読み込まれるファイル。 userlist_file=/etc/vsftpd/user_list # userlist_enable が有効な場合、userlist_file に記載されたユーザを拒否するかどうか。 # NO の場合、許可リストとなる。 userlist_deny=YES # ローカルユーザを chroot するかどうか。 chroot_local_user=NO # chroot_list_enable が有効な場合に読み込まれるファイル。 chroot_list_file=/etc/vsftpd/chroot_list # chroot_list_file で指定したファイルを読み込むかどうか。 # ★注意:chroot_local_user が有効の場合は、chroot しない ユーザのリストとなる。 chroot_list_enable=NO
上記の暗黙の設定も含めると、デフォルトでのアクセス制御は以下の通りとなる。
- anonymous, ftp ユーザはログイン可能 (/var/ftp に chroot される)
- ローカルユーザはログイン可能 (chroot されない)
- しかし、/etc/vsftpd/user_list あるいは /etc/vsftpd/ftpusers に記載されているユーザはログイン不可
- 前者は、デフォルトで
userlist_deny=YES
のため。 - 後者は、PAM で拒否リストとして使用されているため。(/etc/pam.d/vsftpd 参照のこと。)
- 前者は、デフォルトで
- しかし、/etc/vsftpd/user_list あるいは /etc/vsftpd/ftpusers に記載されているユーザはログイン不可
設定例
以下のポリシーでアクセス制御を行う場合に、デフォルトからどう変更するか。
- anonymous ログインを不可とする。
- 指定したユーザのみアクセスを許可し、chroot させる。
[/etc/vsftpd/vsftpd.conf] #anonymous_enable=YES ★NO に変更 anonymous_enable=NO local_enable=YES ★そのまま write_enable=YES local_umask=022 dirmessage_enable=YES xferlog_enable=YES connect_from_port_20=YES xferlog_std_format=YES listen=YES pam_service_name=vsftpd userlist_enable=YES tcp_wrappers=YES userlist_file=/etc/vsftpd/user_list.allow ★追記 userlist_deny=NO ★上記 userlist_file を許可リストとする chroot_local_user=YES ★追記 # どのみち指定したユーザしかログインできないので、 # リストでの chroot 指定はしていない。 [/etc/vsftpd/user_list.allow] hagio ★ログイン許可するユーザ