ファイル転送プロトコル(FTP)はネットワーク上にファイル転送を行なう 旧式のTCPプロトコルです。ユーザー認証を含む全てのサーバートランザクションが暗号化 されておらず、安全性が低いプロトコルと認識されているため、 慎重に設定する必要があります。
Red Hat Enterprise Linux は3つのFTPサーバーを提供します。.
gssftpd — ネットワーク上で認証情報を配信しない、Kerberosされたxinetdベース のFTPデーモンです。
Red Hat Content Accelerator (tux) — FTP機能を持ち合わせた、カーネルスペースウェブサーバーです。
vsftpd — スタンドアローン、セキュリティー重視のFTPサーバーです。
vsftpd FTPサービス設定のセキュリティーガイドラインは次の通りです。
ユーザー名とパスワードを入力する前にグリーティングバナーが表示されます。 デフォルトではクラッカーがシステムの弱点を発見するのに便利な バージョン情報がこのバナーに含まれるようになっています。
vsftpdのグリーティングバナーを変更するには 次のディレクティブを /etc/vsftpd/vsftpd.confに追加して下さい。:
ftpd_banner=<insert_greeting_here> |
上記ディレクティブの<insert_greeting_here>を グリーティングメッセージのテキストに置き換えます。
複数ラインのバナーの場合、バナーファイルの使用が最適です。 複数バナーの管理を簡素化するには、バナーを /etc/banners/という新しいディレクトリに格納します。 この例では、FTP接続のバナーファイルは/etc/banners/ftp.msgになります。 ファイルは下記例のように表示されます。:
#################################################### # Hello, all activity on ftp.example.com is logged.# #################################################### |
![]() | 注記 |
---|---|
項5.1.1.1の説明通りにファイルの各ラインを220で始める必要はありません。 |
vsftpdのグリーティングファイルを参照するには、次のディレクティブを /etc/vsftpd/vsftpd.confに追加して下さい。:
banner_file=/etc/banners/ftp.msg |
項5.1.1.1の説明通り、 TCPラッパーを使用して受信接続に追加バナーを送信することもできます。
/var/ftp/ディレクトリの存在が匿名アカウントを有効にします。
このディレクトリを簡単に作成するには vsftpdパッケージをインストールします。 このパッケージが匿名ユーザーに対してディレクトリツリーを設定し、 匿名ユーザーにはディレクトリを読み取り専用とします。
デフォルトでは匿名ユーザーの書き込み許可は無効となっています。
![]() | 注意 |
---|---|
FTPサーバーへの匿名アクセスを有効とする場合、機密データーの保存場所に注意して下さい。 |
匿名ユーザーのアップロードを許可する場合、/var/ftp/pub/への 書き込み専用ディレクトリの作成をお推めします。
書き込み専用ディレクトリの作成するには次をタイプして下さい。:
mkdir /var/ftp/pub/upload |
匿名ユーザーにディレクトリ内を見せないようにするために、 次をタイプして許可を変更して下さい。:
chmod 730 /var/ftp/pub/upload |
ディレクトリの長いフォーマット一覧は次のように表示されます。:
drwx-wx--- 2 root ftp 4096 Feb 13 20:05 upload |
![]() | 警告 |
---|---|
匿名ユーザーにディレクトリの読み取りと書き込みを許可する管理者のサーバーは盗難ソフトウェアのレポジトリ化してしまう亊がよくあります。 |
そして、 vsftpdで、次のラインを /etc/vsftpd/vsftpd.confに追加して下さい。:
anon_upload_enable=YES |
FTPは安全でないネットワーク上で認証用のユーザー名やパスワードを 暗号化しないまま配信してしまうため、ユーザーアカウントにてサーバーへのシステムユーザーアクセス拒否を設定するようお推めします。
vsftpdのユーザーアカウントを無効にするには、 次のディレクティブを/etc/vsftpd/vsftpd.confに追加して下さい。:
local_enable=NO |
項4.4.2.4 の説明通り、PAMリストファイルを使用すると、ルートユーザーやsudo 特権のあるユーザーなど特定のグループアカウントのFTPサーバーアクセスを簡単に 無効にすることができます。 vsftpdのPAM設定ファイルは/etc/pam.d/vsftpdになります。
又、各サービスで直接ユーザーアカウントを無効にすることも可能です。
vsftpdの特定のユーザーアカウントを無効にするには /etc/vsftpd.ftpusersにユーザー名を追加して下さい。
項5.1.1 の説明通りTCPラッパーを使用し、 1つのFTPデーモンへのアクセスを 管理して下さい。