FTPは、すべてのパスワードとすべてのデータがクリアテキストで転送されるため、非常に安全でないプロトコルです。 TLSを使用することにより、通信全体を暗号化できるため、FTPの安全性が大幅に向上します。この記事では、DebianLennyサーバーでTLSセッションを受け入れるようにPureFTPdを設定する方法について説明します。
1予備メモ
DebianLennyサーバーでPureFTPdセットアップが機能している必要があります。このチュートリアルに示されているように:Debian LennyでのPureFTPdとMySQL(クォータと帯域幅の管理を含む)を使用した仮想ホスティング。
2OpenSSLのインストール
TLSにはOpenSSLが必要です。 OpenSSLをインストールするには、次のコマンドを実行するだけです。
aptitude install openssl
3PureFTPdの構成
FTPをおよび許可する場合 TLSセッション、実行
echo 1 > /etc/pure-ftpd/conf/TLS
TLSセッションのみ(FTPなし)を受け入れる場合は、
を実行します。echo 2 > /etc/pure-ftpd/conf/TLS
代わりに。
TLSをまったく許可しない(FTPのみ)には、/ etc / pure-ftpd / conf / TLSを削除するか、
を実行します。echo 0 > /etc/pure-ftpd/conf/TLS
4TLS用のSSL証明書の作成
TLSを使用するには、SSL証明書を作成する必要があります。 / etc / ssl / private /に作成するので、最初にそのディレクトリを作成します:
mkdir -p /etc/ssl/private/
その後、次のようにSSL証明書を生成できます。
openssl req -x509 -nodes -days 7300 -newkey rsa:2048 -keyout /etc/ssl/private/pure-ftpd.pem -out /etc/ssl/private/pure-ftpd.pem
国名(2文字のコード)[AU]:<-国名を入力します(例:「DE」)。
州名または州名(フルネーム)[一部の州]:<-州を入力しますまたは州名。
地域名(例:市)[]:<-市区町村を入力してください。
組織名(例:会社)[Internet Widgits Pty Ltd]:<-組織名を入力してください(例:会社名)
組織単位名(例:セクション)[]:<-組織単位名(例:「IT部門」)を入力します。
一般名(例:あなたの名前)[]:<-システムの完全修飾ドメイン名を入力します(例: "server1.example.com")。
メールアドレス[]:<-メールアドレスを入力します。
SSL証明書の権限を変更します:
chmod 600 /etc/ssl/private/pure-ftpd.pem
最後にPureFTPdを再起動します:
/etc/init.d/pure-ftpd-mysql restart
それでおしまい。これで、FTPクライアントを使用して接続を試みることができます。ただし、TLSを使用するようにFTPクライアントを構成する必要があります。FileZillaでこれを行う方法については、次の章を参照してください。
5TLS用のFileZillaの構成
FTPをTLSで使用するには、FileZillaなどのTLSをサポートするFTPクライアントが必要です。
FileZillaで、サーバーマネージャーを開きます。
TLSでPureFTPdを使用するサーバーを選択します。 [サーバーの種類]ドロップダウンメニューで、通常のFTPではなくFTPESを選択します。
これで、サーバーに接続できます。これを初めて行う場合は、サーバーの新しいSSL証明書を受け入れる必要があります。
すべてがうまくいけば、サーバーにログインする必要があります:
6つのリンク
- PureFTPd:http://www.pureftpd.org/
- FileZilla:http://filezilla-project.org/
- Debian:http://www.debian.org/