322.4 FTP
322.4 FTP
重要度 1
説明 Pure-FTPdサービスおよびvsftpd FTPサービスの使用方法と設定上のセキュリティ問題について経験と知識があること。
主要な知識範囲
- Pure-FTPd 設定 及び重要なコマンドラインオプション
- vsftpd の設定
- chroot 環境
重要なファイル、
用語、ユーティリティ
- SSL/TLS
- vsftpd.conf
vsftpd.conf
vsftpdの設定ファイル
vsftpd.conf 主なオプション
chroot_list_enable | YESに設定した場合は、ログイン後にホームディレクトリへのchrootされるユーザーリストを指定できる。 NOに設定した場合、全ユーザーがchrootされる |
chroot_list_file | ホームディレクトリ内にchroot jail環境に入れられるユーザーリストを示すファイルを指定する |
chtto_local_user | YESに設定した場合は、ユーザーは指定したディレクトリへとchrootされる |
passwd_chroot_enable | chtto_local_userと共にYESに設定した場合、 chroot jail環境のディレクトリはユーザーごとになる。 chroot jailディレクトリは /etc/passwdにある書くホームディレクトリになる |
※ chroot_list_enableパラメータはYESに設定された場合のみ有効
FTPS
FTPは古くから利用されているプロトコルのため、通信の安全性の点で劣ります。
匿名FTPなど安全性の必要が低いシステムであれば問題ありませんが、暗号化などの配慮が必要です。
FTPをSSL/TLSで暗号化するプロトコルとして、FTPSがあります。Pure-FTPdやvsftpdも、OpenSSLと組み合わせることで実現できます。
また、サーバだけでなくクライアントもFTPSをサポートしている必要があります。
FTP セキュリティ
FTPはTELNETなどと同様、古くから使用されているプロトコルのため、最初からセキュリティが考慮されているわけではありません。
最もセキュリティを考慮した方法はFTPを使用しないことですが、WebコンテンツのアップロードなどでFTPが多用されています。
このような環境でも、セキュリティを高めるために下記の方法を取る必要があります。
・SSL/TLSを利用
通常のFTPの最も大きな弱点は、パスワードなどの認証情報を暗号化せず平文のまま送受信していることです。
SSL/TLSを使用するようにFTPサーバーを設定することで、通信を暗号化することができます。
問題点は、すべてのFTPクライアントがSSL/TLSをサポートしているわけではないことです。
・chroot環境の利用
chroot環境を利用すると、認証を行ったユーザーは許可されたディレクトリにしかアクセスできません。
そこは通常データしか置くことができず、他のディレクトリにはアクセスできないのでません
システムメンテナンスなどでFTPを使用する必要性がない限り、chroot環境は必須といってもよいでしょう。
・アクセス制御
アクセス制御も、不特定多数にFTPを提供する環境では必須の設定といってよいでしょう。
匿名(Anonymous)ログインは、ファイルのダウンロードなどを行わせるために設定する場合がありますが、基本的にセキュリティを高めるために行うわけではありません。
ディスカッション
コメント一覧
まだ、コメントがありません