RHEL 8 での SSL/TLS を使用した安全な FTP ファイル転送のセットアップ
前回の記事では、RHEL 8 Linux にFTP サーバーをインストールして構成する方法について詳しく説明しました。この記事では、SSL/TLS を使用してFTP サーバーを保護し、システム間で安全にファイルを転送するためのデータ暗号化サービスを有効にする方法について説明します。
すでにFTPサーバーがインストールされ、適切に実行されていることを願っています。そうでない場合は、次のガイドを使用してシステムにインストールしてください。
- RHEL 8 で FTP サーバーをインストール、構成、保護する方法
ステップ 1. SSL/TLS 証明書と秘密キーの生成
1. 次のディレクトリを作成して、SSL/TLS 証明書とキー ファイルを保存します。
# mkdir -p /etc/ssl/vsftpd
2. 次に、次のコマンドを使用して、自己署名のSSL/TLS証明書と秘密キーを生成します。
# openssl req -x509 -nodes -keyout /etc/ssl/vsftpd/vsftpd.pem -out /etc/ssl/vsftpd/vsftpd.pem -days 365 -newkey rsa:2048
上記コマンドで使用される各フラグについて説明します。
- req – X.509 証明書署名要求 (CSR) 管理用のコマンドです。
- x509 – X.509 証明書データ管理を意味します。
- 日 – 証明書が有効な日数を定義します。
- newkey – 証明書キープロセッサを指定します。
- rsa:2048 – RSA キー プロセッサ。2048 ビットの秘密キーを生成します。
- keyout – キーストレージファイルを設定します。
- out – 証明書ストレージ ファイルを設定します。証明書とキーの両方が同じファイル /etc/ssl/vsftpd/vsftpd.pem に格納されることに注意してください。< /li>
上記のコマンドを実行すると、以下の質問に答えるように求められます。シナリオに適用される値を使用することを忘れないでください。
Country Name (2 letter code) [XX]:IN State or Province Name (full name) []:Lower Parel Locality Name (eg, city) [Default City]:Mumbai Organization Name (eg, company) [Default Company Ltd]:TecMint.com Organizational Unit Name (eg, section) []:Linux and Open Source Common Name (eg, your name or your server's hostname) []:tecmint Email Address []:

ステップ 2. SSL/TLS を使用するための VSFTPD の構成
3. お気に入りのコマンド ライン エディタを使用して、VSFTPD 構成ファイルを開いて編集します。
# vi /etc/vsftpd/vsftpd.conf
次の構成パラメータを追加して SSL を有効にし、ファイルの最後で使用する SSL と TLS のバージョンを選択します。
ssl_enable=YES ssl_tlsv1_2=YES ssl_sslv2=NO ssl_sslv3=NO
4. 次に、rsa_cert_file オプションと rsa_private_key_file オプションを追加して、SSL 証明書とキー ファイルの場所をそれぞれ指定します。
rsa_cert_file=/etc/ssl/vsftpd/vsftpd.pem rsa_private_key_file=/etc/ssl/vsftpd/vsftpd.pem
5. 次に、これらのパラメータを追加して、SSL を使用した匿名接続を無効にし、すべての非匿名接続を SSL 経由で強制します。
allow_anon_ssl=NO # disable anonymous users from using SSL force_local_data_ssl=YES # force all non-anonymous logins to use a secure SSL connection for data transfer force_local_logins_ssl=YES # force all non-anonymous logins to send the password over SSL
6. 次に、これらのオプションを追加して SSL データ接続の再利用をすべて無効にし、SSL 暗号を高に設定して暗号化された SSL 接続を許可します。
require_ssl_reuse=NO ssl_ciphers=HIGH
7. また、pasv_min_port と pasv_max_port を使用して、安全な接続のために vsftpd が使用するパッシブ ポートのポート範囲 (最小ポートと最大ポート) を指定する必要があります。それぞれパラメータ。さらに、debug_ssl オプションを使用して、トラブルシューティングの目的で SSL デバッグをオプションで有効にすることができます。
pasv_min_port=40000 pasv_max_port=50000 debug_ssl=YES
8. 最後に、ファイルを保存し、vsftpd サービスを再起動して、上記の変更を有効にします。
# systemctl restart vsftpd
9. FTP サーバーに安全にアクセスする前に実行する必要があるもう 1 つの重要なタスクは、システムでポート 990 と 40000 ~ 50000 を開くことです。ファイアウォール。これにより、vsftpd サービスへの TLS 接続が許可され、次のように、VSFTPD 構成ファイルで定義されているパッシブ ポートのポート範囲がそれぞれ開かれます。
# firewall-cmd --zone=public --permanent –add-port=990/tcp # firewall-cmd --zone=public --permanent –add-port=40000-50000/tcp # firewall-cmd --reload
ステップ 3: FileZilla をインストールして FTP サーバーに安全に接続する
10. FTP サーバーに安全に接続するには、FileZilla などのSSL/TLS 接続をサポートする FTP クライアントが必要です。これはオープン ソースです。 、デフォルトで SSL/TLS 接続をサポートする、広く使用されているクロスプラットフォームの FTP、SFTP、および FTPS クライアント。
次のようにデフォルトのパッケージ マネージャーを使用して Linux に FileZilla をインストールします。
$ sudo apt-get install filezilla #Debian/Ubuntu # yum install epel-release filezilla #On CentOS/RHEL # dnf install filezilla #Fedora 22+ $ sudo zypper install filezilla #openSUSE
11. Filezilla パッケージがインストールされたら、システム メニューでこのパッケージを検索して開きます。リモート FTP サーバーにすばやく接続するには、メイン インターフェイスからホスト IP アドレス、ユーザー名、およびユーザーのパスワードを入力します。次に、[クイック接続] をクリックします。

12. 次に、アプリケーションは、未知の自己署名証明書を使用した安全な接続を許可するかどうかを尋ねます。 [OK] をクリックして続行します。

サーバーの構成に問題がない場合は、次のスクリーンショットに示すように接続が成功するはずです。

13. 最後に、次のスクリーンショットに示すように、マシンからサーバーにファイルをアップロードして、FTP の安全な接続ステータスをテストします。

それで全部です!この記事では、RHEL 8 で安全なファイル転送のために SSL/TLS を使用して FTP サーバーを保護する方法を説明しました。これは、RHEL 8 で FTP サーバーをインストール、構成、保護するための包括的なガイドの第 2 部です。ご質問やご意見がございましたら、以下のフィードバック フォームをご利用ください。