業務用エアコン関連の技術情報、エラーコード、環境問題対策に関する別サイト「エアコンの安全な修理・適切なフロン回収」

CentOS7.6サーバー構築 SSL証明書作成とFTPサーバー導入 

スポンサーリンク
スポンサーリンク

1.SSL証明書作成

1.1 CA自己認証局の作成

1.1.1 CA構築の事前準備

①SSL コマンドにPATH を通す
これをしておくとCA.shが使えるようになるので便利

# export PATH=/etc/pki/tls/misc:$PATH

②Copenssl.cnfの編集

# vi /etc/pki/tls/openssl.cnf
次の箇所を探しコメントアウトを外す
# nsCertType = server   nsCertType = server
# nsCertType = sslCA, emailCA  nsCertType = sslCA, emailCA

1.1.2 CA 関連証明書の作成

①自己署名済みCA証明書(cacert.pem) CA証明書の秘密鍵(cakey.pem)の作成

#  /etc/pki/CA/certs/CA -newca
CA certificate filename (or enter to create)
<Enter>
・・・・・・・・・・・・・・・・・・・・・・
CA用パスワードが聞かれます
Enter PEM pass phrase: ??????      
Verifying – Enter PEM pass phrase: ??????
・・・・・・・・・・・・・・・・・・・・・・
証明書情報が聞かれます
Country Name(2 letter code) [XX]: JP
State or Province Name(full name) []: Kanagawa
Locality Name(eg, city) [Default City]: yokohama
Organization Name(eg, company) [Default Company Ltd]:(任意のもの)
Organizational Unit Name(eg, section) []: (任意のもの)
Common Name(eg, your name or your server’s hostname): (任意のもの)
Email Address: (任意のもの)
・・・・・・・・・・・・・・・・・・・・・・
再度PEM pass phraseを聞かれます
Enter pass phrase for /etc/pki/CA/private/./cakey.pem:??????
終了するとつぎのファイルができる
/etc/pki/CA/certs/cacert.pem : 自己署名済みCA証明書ができる
/etc/pki/CA/certs//private/cakey.pem : CA証明書の秘密鍵

②秘密鍵(cakey.pem)は絶対に他の人に見られてはならないので 権限変更

# chmod 600 /etc/pki/CA/certs//private/cakey.pem
# chmod 700 /etc/pki/CA/certs//private/

③CA 証明書をブラウザにインポートするca.der ファイルの作成
これをしないと、アクセスするたびに警告が発生します。 以下のコマンドでブラウザに取り込めるDER形式にエンコードします。

# openssl x509 -inform PEM -outform DER -in /etc/pki/CA/cacert.pem -out /etc/pki/CA/ca.der

1.2 サーバー関連証明書の作成

作成した自己認証局CAを使って、目的のサイト自体の証明書を発行します。

1.2.1 サーバー用秘密鍵(newkey.pem)を作成する

#  /etc/pki/CA/certs/CA -newreq
CA certificate filename (or enter to create)
<Enter>
・・・・・・・・・・・・・・・・・・・・・・
サーバー証明書用パスワードが聞かれます
Enter PEM pass phrase: $$$$$      
Verifying – Enter PEM pass phrase: $$$$$
・・・・・・・・・・・・・・・・・・・・・・
証明書情報が聞かれます
Country Name(2 letter code) [XX]: JP
State or Province Name(full name) []: Kanagawa
Locality Name(eg, city) [Default City]: yokohama
Organization Name(eg, company) [Internet Widgits Pty Ltd]:(任意のもの)
Organizational Unit Name(eg, section) []: (任意のもの)
Common Name(eg, YOUR name) []: (サーバーIPアドレス)
Email Address: (任意のもの)
・・・・・・・・・・・・・・・・・・・・・・

終了するとつぎのファイルができる
/etc/pki/CA/certs/
newkey.pem

1.2.2 サーバー秘密鍵のパスワードを削除

このパスワードを設定したままにしておくと、SSL を起動するたびにパスワード入力が必要になり、面倒ですから削除しておきます。

# openssl rsa -in /etc/pki/CA/certs/newkey.pem -out /etc/pki/CA/certs/newkey.pem
Enter pass phrase for newkey.pem:$$$$$

1.2.3 サーバー用証明書(newcert.pem/server.crt)を作成

①newcert.pem作成

#  /etc/pki/CA/certs/CA -sign
Enter pass phrase for ./demoCA/private/cakey.pem:?????  CA用パスワード

②server.crt作成

# openssl x509 -in newcert.pem -out server.crt

2.FTP サーバーの導入

CentOS7で標準のvsftpdを使わずに従来からあるproftpdを導入してみます。

2.1 proftpdダウンロード

ダウンロードサイトはいろいろありますが例として次のようなもの

# wget ftp://ftp.proftpd.org/distrib/source/proftpd-1.3.6.tar.gz

2.2 proftpdインストール

# tar zxvf proftpd-1.3.6.tar.gz
proftpd-1.3.6]# ./configure \
–prefix=/usr/local/proftpd \ インストールディレクトリー(任意)
–with-modules=mod_tls \  SSL,tls使用
–with-includes=/usr/include/openssl openSSL使用
コンパイル及びインストール

2.3 インストール後の設定

①ユーザーグループ作成

# groupadd nogroup

②proFTPD の設定ファイル編集(proftpd.conf)

以下は本ページのCA設定を基にした設定ファイルの例

全てのディレクトリでパーミッション変更を許可。
<Limit SITE_CHMOD>
AllowAll
</Limit>

・・・・・・・・・・・
Anonymous(匿名)でログイン出来ないようにする。
<Anonymous ~ftp>」から「</Anonymous>」まで全ての行をコメントアウトする
# <Anonymous ~ftp>
# User ftp
# Group ftp
#
# # We want clients to be able to login with “anonymous” as well as “ftp”
# UserAlias anonymous ftp
#
# # Limit the maximum number of anonymous logins
# MaxClients 10
#
# # We want ‘welcome.msg’ displayed at login, and ‘.message’ displayed
# # in each newly chdired directory.
# DisplayLogin welcome.msg
# DisplayChdir .message
#
# # Limit WRITE everywhere in the anonymous chroot
# <Limit WRITE>
# DenyAll
# </Limit>
#</Anonymous>
・・・・・・・・・・・・・・・・・・・・・・
FTP over SSL
<IfModule mod_tls.c>
TLSEngine on
TLSLog /var/log/proftpd.log
TLSProtocol SSLv23
TLSCipherSuite ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP
TLSRequired off
TLSVerifyClient off
TLSRSACertificateFile /etc/pki/CA/certs/server.crt
TLSRSACertificateKeyFile /etc/pki/CA/certs/newkey.pem
TLSVerifyClient off

</IfModule>

コメント

error:Content is protected !!
タイトルとURLをコピーしました