[訂正]FTP(vsftpd)サーバのSSL設定について

2018年10月12日

–【訂正】–
2015/02/10
vsftpdでのSSL設定の内容について変更します。
前回の内容をすべて"打消し"状態にしています。
また、設定内容に追加をしました。
——————————————

 

正規のSSL証明を買ってみました。
お金が無いために、安い証明書を探したところ、ネットオウル株式会社 SSL boxで購入しました。


ラビットSSL 2100円/年 (2013/07/03 現在)

 

–2013/7/4-前回の内容 開始–
自分が証明書の申請したのは、去年です。

FTPサーバでSSL通信が出来るようになったのは・・・購入してから2ヶ月ぐらい経ってからでした。
その当時は、思うよう設定が出来ない・・・理解が出来て無かったと思います。

Web(Apache)サーバの場合は、ラビットSSLは中間証明書が必要でした。
だから・・・FTPサーバにも中間証明書の設定が必要だと思っていたのですが・・・
FTP(vsftpd)サーバの設定では、中間証明書の記述する部分がありませんでした。。。
サイトで色々調べても思うような記事がありませんでした。

ずーと悩んで、2ヶ月ぐらい経ってから・・・
証明書だけ出来るかなぁ~と思ってやってみたところ、SSL通信が出来るようになりました。
–2013/7/4-前回の内容 終了–

 

SSLの通信を行うためには、"サーバ証明書" + “中間証明書" が必要です。
前回の内容では、サーバ証明書だけで設定可能と書いていましたが・・・間違えです。

設定をする場合は、"サーバ証明書" + “中間証明書" を1つのファイルに設定する必要があります。

 

※注意※
サーバ証明書での “SHA1" から “SHA2" ハッシュアルゴリズムの移行してください。。。と、各セキュリティ会社・認証局など方々がサイトなど通じて注意喚起を出しています。
SSLを購入したところでは、再発行の手続きが出来るようになりました。
再発行の手続きについて、各業者さんごと異なります。
十分に気をつけて下さい。

参考文献:さくらのナレッジ – MOONGIFT 中津川 篤司 さん

 

【設定方法】
※———————————注意———————————-※
・サーバOSはcentOSで行っています。なお、ubuntuサーバでも同じ設定で出来ます。
・vsftpdの一般的な設定が出来ていることと、正規の証明書が出来ているという前提で行っています。
※———————————————————————–※

–2015/02/10 追加 開始–
1."サーバ証明書" + “中間証明書" を1つのファイルに設定する
※サーバに “サーバ証明書"・"中間証明書"の2つのファイルが存在することします。

[user@localhost]# cat tmyinsightnet.crt inter.crt >> tmyinsightnetinter.crt

これで、"サーバ証明書"・"中間証明書" の2つのファイルを1つのファイルにすることができました。

–2015/02/10 追加 終了–

2.vsftpd.confにSSLの設定を記述する

[user@localhost]# sudo vi /etc/vsftpd/vsftpd.conf

ファイル内容

~~~~~~~~~~~~~~~~~~~~~~省略~~~~~~~~~~~~~~~~~~~~~~~~~~
#最後に記述する。
ssl_enable=YES   #FTP over SSLを有効にする。
force_local_data_ssl=NO >※1
force_local_logins_ssl=NO #※2

#----2015/07/04 前回の部分 開始--
#rsa_cert_file=[絶対パス]>/localhost.crt #証明書ファイルの場所を指定する。
#rsa_private_key_file=[絶対パス]/loacalhost.key # 秘密鍵の場所を指定する。
#----2015/07/04 前回の部分 終了--

#----2015/07/04 追加部分 開始--
rsa_cert_file=[絶対パス]>/tmyinsightnetinter.crt
rsa_private_key_file=[絶対パス]/tmyinsightnet.key
#----2015/07/04 追加部分 終了--

ssl_ciphers=HIGH #SSL暗号化接続に使用する暗号スイートする設定
~~~~~~~~~~~~~~~~~~~~~~省略~~~~~~~~~~~~~~~~~~~~~~~~~~

※1 ローカルユーザがデータを送受信する場合に、強制的にSSL接続する設定。
※2 ローカルユーザが接続した場合に、強制的にSSL接続する設定。
※1と※2を2つ"YES"にした方が良いと思います。
自分は、Wordpressをプラグインのインストールするときに、SSL接続を行うとインストールが出来ないので、"NO"にしてあります。

一応、この設定でFTPのSSL接続が出来るようになりました。

【参考文献】
XOOPS Cubeさん – RHEL関連/centOS/パッケージ/vsftpd/FTPS
サーバの実験室 RedHat/Fedora さん
パソコンおやじ さん
脳みそスワップアウトさん – vsftpdでFTPS(FTP over SSL) の設定

FTP,VPS

Posted by こなつ