Linux 環境で FTP サーバー構成を実装するために、ほとんどの Linux ディストリビューション パッケージは Washington University FTP (Wu-Ftpd) を使用します。これは、多くの強力な機能と、FTP の 60% 以上の大きなスループットを備えているため、優れたサーバー ソフトウェアです。インターネット上のサーバーはそれを採用します。
インストールして実行する
以下では RedHat Linux を例として取り上げます。
1. インストール
さまざまなサービス オブジェクトに応じて、FTP サービスは 2 つのカテゴリに分類できます。1 つはシステム上の正当なユーザーのみが使用できるシステム FTP サーバーで、もう 1 つは誰でも FTP にログインできる匿名 FTP サーバーです。サーバー、およびサーバー 接続したら、ログイン プロンプトに「Anonymous」と入力してサーバーにアクセスします。これら 2 つのサービスでは、RedHat の最初の CD から Wu-Ftpd の RPM パッケージをインストールできます。必要なのは、Root としてシステムに入り、次のコマンドを実行することだけです。
rpm -ivh anonftp -xx-x.i386.rpm
Rpm-ivhwu-ftpd-xxx-x.i386.rpm
ここで、-xx-x と -xxx-x はバージョン番号です。
2.スタート
Apache と同様に、Wu-Ftpd も自動的に起動するように設定できます。RedHat に付属のセットアップ プログラムを実行し、「システム サービス」オプションで Wu-Ftpd を選択し、[OK] ボタンを押して確認して終了します。
自動起動は便利ですが、Wu-Ftpd 設定ファイルを変更する場合は、手動で起動する必要があります。
開始: /usr/sbin/ftprestart
閉じる: /usr/sbin/ftpshut
FTPサーバーの設定
FTP サーバーのセキュリティを確保するには、ユーザーのアクセス権をより適切に制御するためにいくつかの重要な構成ファイルを設定する必要があります。これらの設定ファイルは、/etc/ftpusers、/etc/ftpconversions、/etc/ftp-groups、/etc/ftpphosts、/etc/ftpaccess です。これらのファイルを使用すると、誰が、いつ、どこからサーバーに接続できるかを非常に正確に制御でき、接続後に行われた作業を確認および追跡できます。
/etc/ftpusers: このフォルダーに含まれるユーザーは、FTP 経由でサーバーにログインできません。場合によっては、禁止する必要があるユーザー アカウントがファイル /etc/ftpuser に書き込まれるため、一部のユーザーは FTP サービスの使用を禁止されることがあります。
/etc/ftpconversions: 圧縮/解凍プログラムの構成に使用されます。
/etc/ftpgroups: ユーザー グループを作成します。このグループのメンバーは、FTP サーバーにアクセスするために事前に定義されています。
/etc/ftpphosts: リモート ホストによる特定のアカウントへのアクセスを禁止または許可するために使用されます。次に例を示します。
許可CZC 192.168.0.0/24
cdd 10.0.0.0/8 を拒否する
これは、czc ユーザーがネットワーク セグメント 192.168.0 からのアクセスを許可され、cdd がネットワーク セグメント 10 からのアクセスを拒否されていることを意味します。
/etc/ftpaccess: これは、アクセス許可を制御するために使用される非常に重要な構成ファイルです。ファイル内の各行は属性を定義し、属性の値を設定します。ここでは、その一般的な構成のいくつかを簡単に紹介します。
1. ユーザー カテゴリを定義する
形式:class [クラス名] [実/ゲスト/匿名][IPアドレス]
機能: このコマンドの機能は、FTP サーバー上のユーザーのカテゴリーを設定します。また、クライアントの IP アドレスを制限し、特定またはすべての IP アドレスが FTP サーバーにアクセスできるようにすることもできます。
2. ログインリトライ回数
コマンドラインに「loginfails 10」と入力します。これは、ログインが 10 回失敗した場合に接続が切断されることを示します。
3. パスワードチェック
形式: passwd-check <厳密性> warn
これは、匿名ユーザーのパスワード使用状況をチェックします。<strictness> は、None、Trivial、RFC822 の 3 つの文字列のいずれかです。 [なし] が選択されている場合は、パスワード チェックが行われないことを意味し、[簡単] が選択されている場合は、パスワードに特定の要件があることを意味し、[RFC822] が選択されている場合は、パスワードに少なくとも 1 つの @ 記号が必要であることを意味します。最も厳格な要件は、電子メール アドレスです。RFC822 メッセージ ヘッダー標準に準拠する必要があります (例: [email protected])。
例: passwd-check rfc822 warn は、パスワード要件が非常に厳しく、パスワードが要件を満たさない場合に警告メッセージが表示されることを示します。
4. ログイン人数の制限
形式:制限 [カテゴリ] [人数] [時間] [ファイル名]
指定したカテゴリで、合意された時間内に FTP にログインできる人数を設定します。例: リモート Any/etc/many.msg を制限します。これは、リモート カテゴリにログインしている人数が常に 20 人を超えてはいけないことを示します。そうでない場合は、Many.msg 警告メッセージが表示されます。
これらの構成を適切に使用すると、サーバーを効果的に保護できます。
確認する
FTP サーバーをインストールして構成した後、グラフィカル ツールとコマンド ラインの両方を使用して FTP サーバーを確認し、FTP サーバーにアクセスできます。 Linux で最も一般的に使用されるコマンドは FTP です。これは、単純な FTP サーバー インターフェイスを提供します。 FTP サーバーに接続するには、コマンド プロンプトで「FTP サーバー名」と入力し、サーバー名を接続する FTP サーバーのホスト名または IP アドレスに置き換えます。プロンプトに従ってユーザー名とパスワードを入力し、標準の Linux を使用します。 FTP サーバーのディレクトリ構造を上下に移動します。さらに、ウィンドウ gFTP などのグラフィカル FTP プログラムを使用して、Web ブラウザから FTP サーバーにアクセスすることもできます。
以上が Linux での FTP サーバー設定の重要なポイントです。ご参考になれば幸いです。
/etc/ftpusers: このフォルダーに含まれるユーザーは、FTP 経由でサーバーにログインできません。場合によっては、禁止する必要があるユーザー アカウントがファイル /etc/ftpuser に書き込まれるため、一部のユーザーは FTP サービスの使用を禁止されることがあります。
/etc/ftpconversions: 圧縮/解凍プログラムの構成に使用されます。
/etc/ftpgroups: ユーザー グループを作成します。このグループのメンバーは、FTP サーバーにアクセスするために事前に定義されています。
/etc/ftpphosts: リモート ホストによる特定のアカウントへのアクセスを禁止または許可するために使用されます。次に例を示します。
許可CZC 192.168.0.0/24
cdd 10.0.0.0/8 を拒否する
これは、czc ユーザーがネットワーク セグメント 192.168.0 からのアクセスを許可され、cdd がネットワーク セグメント 10 からのアクセスを拒否されていることを意味します。
/etc/ftpaccess: これは、アクセス許可を制御するために使用される非常に重要な構成ファイルです。ファイル内の各行は属性を定義し、属性の値を設定します。ここでは、その一般的な構成のいくつかを簡単に紹介します。
1. ユーザー カテゴリを定義する
形式:class [クラス名] [実/ゲスト/匿名][IPアドレス]
機能: このコマンドの機能は、FTP サーバー上のユーザーのカテゴリーを設定します。また、クライアントの IP アドレスを制限し、特定またはすべての IP アドレスが FTP サーバーにアクセスできるようにすることもできます。
2. ログインリトライ回数
コマンドラインに「loginfails 10」と入力します。これは、ログインが 10 回失敗した場合に接続が切断されることを示します。
3. パスワードチェック
形式: passwd-check <厳密性> warn
これは、匿名ユーザーのパスワード使用状況をチェックします。<strictness> は、None、Trivial、RFC822 の 3 つの文字列のいずれかです。 [なし] が選択されている場合は、パスワード チェックが行われないことを意味し、[簡単] が選択されている場合は、パスワードに特定の要件があることを意味し、[RFC822] が選択されている場合は、パスワードに少なくとも 1 つの @ 記号が必要であることを意味します。最も厳格な要件は、電子メール アドレスです。RFC822 メッセージ ヘッダー標準に準拠する必要があります (例: [email protected])。