閉じる

Vsftpd over SSL/TLS(FTP サーバーの暗号化)

Vsftpd を SSL/TLS で暗号化出来るように設定します。

自己署名の証明書を作成します。

[root@server1 ~]# cd /etc/pki/tls/certs

[root@server1 certs]# openssl req -x509 -nodes -newkey rsa:2048 -keyout vsftpd.pem -out vsftpd.pem -days 3650

Generating a RSA private key
.....+++++
................+++++
writing new private key to 'vsftpd.pem'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [XX]:JP                                       # 国コード
State or Province Name (full name) []:Wakayama                             # 地域 (県)
Locality Name (eg, city) [Default City]:Iwade                              # 都市
Organization Name (eg, company) [Default Company Ltd]:zoah.lan             # 組織名
Organizational Unit Name (eg, section) []:zoah.lan                         # 組織の部門名
Common Name (eg, your name or your server's hostname) []:server1.zoah.net  # サーバーの FQDN
Email Address []:test@zoah.net                                             # 管理者アドレス

[root@server1 ~]# chmod 600 vsftpd.pem ← パーミッションを変更します。

[root@server1 ~]# vi /etc/vsftpd/vsftpd.conf ← Vsftpd の設定ファイルを編集します。

rsa_cert_file=/etc/pki/tls/certs/vsftpd.pem ← SSL/TLS を有効化します。
ssl_enable=YES ← SSL/TLS を有効化します。
force_local_data_ssl=YES ← SSL/TLS を強制的に有効化します。
force_local_logins_ssl=YES ← SSL/TLS を強制的に有効化します。

[root@server1 ~]# systemctl restart vsftpd ← Vsftpdを再起動します。

※Firewalld を有効にしている場合は、パッシブポートの許可が必要です。

[root@server1 ~]# vi /etc/vsftpd/vsftpd.conf ← Vsftpdの設定ファイルを編集します。

↓ 最終行に追記して下さい。任意の範囲のポートでパッシブポートを固定します。
pasv_enable=YES
pasv_min_port=60000
pasv_max_port=60100

[root@server1 ~]# systemctl restart vsftpd ← Vsftpdを再起動します。

© 2025 Linuxで自宅サーバー(ホームサーバー)-構築・設定方法- | WordPress テーマ: CrestaProject の Annina Free