パソコン情報

【2024年】CentOS7(nginx)ProxyServerのSSL(Netowl)更新作業

SSL証明書の更新が1年毎になってしまったので本当にメンドクサイです。

自前のVPSサーバー(仮想サーバー)に、

ココがポイント

CentOS7でWEBサーバー(nginx)を立てて、ProxyServerにして使用

しています。

SSLが当たり前の時代になり、ProxyServerも毎年SSL証明書を更新しているのですが、忘れてしまうので備忘録として残しておこうと思います。

 

過去のまとめ参考サイト内リンク

https://pctips.jp/security/centos7-nginx-ssl2020/

https://pctips.jp/server/centos7_ssl_nginx2018/

 

 

VNC Serverを起動させて遠隔操作

既に、VPSサーバー(さくらのVPS)で構築したCentOS7には、VNC Serverの設定が済んでいますので、コマンドラインから起動します。

さくらのVPSの管理パネルから、コンソールを呼び出して起動させます。

ココに注意

普段はセキュリティの為、メールサーバーやVNC Serverも停止させています。

なぜか、起動がうまく行きませんでしたし、停止もうまく行きません。

ちなみに、停止させる時は、コロンの前にスペースが必要だったという理由でした。

vncserver -kill(半角スペース):1

それから、起動もちゃんとできましたので、VNC Viewerで接続してみました。

 

admin@ドメインでのメール確認

ココに注意

SSL証明書を発行する上で、admin@ドメイン名にて、メールを受け取らなければ話が進まない。

かと言って、ProxyServerとして使用しているサーバーにて、常にメールサーバーを動かしておくのはセキュリティ上良くない。

その為に、普段はファイヤーウォールでメールのポートもブロックしています。

 

それでは詳細な作業内容ですが、

(1)コマンドから、ファイヤーウォールを停止させます。

systemctl stop firewalld

※ちなみに、ファイヤーウォールの現時点の動作を確認するコマンドも載せておきます。

systemctl status firewalld

(2)メールサーバーは動いているので、admin@ドメイン名にメールをテスト送信

 

\\home\admin\Maildir\newの中にメールが送られてきてれば受信テスト完了です。

【2024年に迷った事】
フォルダの開き方により、\\home\Maildir\newが開くが、この場所ではないので、上のアドレスまでエクスプローラーツールなどで、移動すること。

 

【追記】2023年度の更新にて、なかなかメールが送られてこないという事がありました。

ココに注意

1年前の事は忘れてしまうものです!

古いSSLの方を更新するのではなく、新たな方で更新作業をしないとダメでした。

そして、新たな方では、CSR入力欄がでてきますが、状況が変わってないので、古い方からコピーして貼り付けました。

 

申請すると、スグに、admin@ドメイン名の方にメールが来ました。(ほぼ時間差なし)

SSL証明書の取得

自分の場合は、SSL証明書に、NetowlのCoreSSLというサービスを利用していますので「更新申込」をしました。

外部サーバーを選択して、クレジットから支払いを済ませると「更新申込」ボタンが、「更新申請」ボタンに変化しました。

更新申請ボタンをクリックすると下記の様な画面になりました。

このCSR入力欄ですが、過去にCSR(署名要求)は作成して内容も変更ないので同じものを使いました。

※ちなみに、WEBサーバー内のXXXXX.csrファイルを開きVNCServerでコピー&ペーストできました。

CSRの作成方法は、内部リンクの下記を参照してください。

https://pctips.jp/server/centos7_ssl_nginx2018/

 

次へ進むと最終的に、「次へ進む(申請を確定します)」をクリックしました。

確定すると、admin@ドメイン名にメールが送信されるようです。

 

セキュアコアのWEB承認作業

この作業は何度もやっているので慣れてきました。

送られてきたメールには、リンク先が貼ってあり、WEBでアクセスした後、コードを入力させて承認させるという作業です。

【2024年迷った事】
この作業は、VNCSERVERでアクセスしたCenoOS上で行う作業になります。
Firefoxのブラウザを使用して認証させました。

Thank youとなれば完了となり、Netowlのページでは、「発行申請中です」という表示になります。

そのままにしておくと古い画面のまま進行しないので、管理画面に移動したり、ブラウザを更新すると、「発行済み」に数分で変化しました。

すると、admin@ドメイン名じゃなく、Netowlに登録されているメールアドレスの方に、SSL証明書付きメールが送られてきました。

 

nginxへSSL証明書設定(失敗)

\etc\nginx\nginx.conf

このファイル内に、下記の様な設定項目があります。

ssl_certificate         /etc/nginx/conf/ssl/XXXXXssl.crt;
ssl_certificate_key     /etc/nginx/conf/ssl/XXXXXjp.key;

つまり、更新作業として行う作業は、XXXXXssl.crtの内容を最新にして、サーバーの\etc\nginx\conf/ssl内にアップすればいいようですね。

ちなみに、XXXXXssl.crtは、SSL証明書と中間証明書が結合されたものになりますので、テキストエディターにて作成しました。

注意ポイント

VNCServerでテキストファイルをコピー&ペーストしてやって見ましたが何だかうまく行きませんでした。

何かバイナリーモードとかアスキーモードなどで何か不具合がでてしまうのでしょうか!?

別の方法でやる事にしました。

 

nginxへSSL証明書設定(成功)

(1)Netowl管理パネルより、SSL証明書と中間証明書をダウンロード

(2)自分のレンタルサーバーに一時、2つのファイルをアップロード

※自分で見直しても不可解な文章だったので、もう少し詳細を書きますと、直接CentOSのサーバーにファイルをアップロードできないので、いったん、自分が他に借りているレンタルサーバーにファイルをアップロードして、そのレンタルサーバーのFTPアカウントを発行して繋がるようにして、CentOSのFileZillaからダウンロードするという手順です。

(3)CentOS7のFileZilla(FTPクライアント)にて、自分のレンタルサーバーから2つのファイルをダウンロード

※つまり、SSL証明書と中間証明書をサーバーの \etc\nginx\conf/ssl 内にアップします。

(4)ターミナル(コマンド)にて、 \etc\nginx\conf/ssl に移動

(5)2つのファイルを結合させて、XXXXXssl.crtファイルを作成

【2024年迷った事】
XXXXは自分のサーバーで設定した固有の単語なので、前年のファイル名を確認して合わせること。

cat SSL証明書ファイル(半角スペース) 中間証明書ファイル(半角スペース) >(これ忘れないように!)(半角スペース)XXXXXssl.crt

 

自分は、「>」を付け忘れてエラーになり、ちょっと無駄な時間を費やしてしまいました。

 

(6)nginxをリスタート

SSL証明書と中間証明書のファイルを結合させたら、nginxをリスタートすればいいだけになります。

 

リスタートしたら、ブラウザにて更新読込後、すぐにSSLが更新されていました。

 

まとめと後始末

ココに注意

こんなSSL証明書を更新する作業が毎年あると思うと憂鬱になります

 

とりあえず大きな流れとしてまとめると、

ポイント

(1)WEBサーバーを遠隔する為に、VNCServerをVPSコンソールより起動

(2)VNCViewerにて接続して、ファイヤーウォールを停止

※Admin@ドメイン名にて受信できることを確認する
【2024年】サーバー内の、\\home\admin\Maildir\newのテキストデータで確認

(3)Netowl管理パネルにて、更新(CSR入力欄に入力)

※CSRは変更ないので、サーバー内に作成しておいたXXXXX.csr内のものをコピー&ペースト使用
※【2024年】前年度のCSRをそのまま利用

(4)セキュアコアWEB認証してSSL証明書を発行

※【2024年】サーバー内のFireFoxブラウザで作業

(5)Netowl管理パネルより、SSL証明書と中間証明書をダウンロード

(6)自分のレンタルサーバーに一旦、2つのファイルをアップロード

※【2024年】自分のレンタルサーバー.jpの方にNetowlからダウンロードした2つのファイルをアップロード

(7)自分のレンタルサーバーから、CentOS7アプリFileZillaを使ってダウンロード

※【2024年】サーバーのFTPクライアントFileZillaを使って2つのファイルをダウンロード

(8)2つのファイルを結合して、XXXXXssl.crtファイルを作成

(9)nginxを再起動して、WEBページにてSSL証明書が更新されたことを確認

(10)後始末として、ファイヤーウォールを開始させて、VPSコンソールからVNCServerを停止

 

それでは、後始末作業に行きます。

この作業は、VPSコンソールからやっても同じだと思いますが、VNCViewer上で行いました。

停止を開始させて、状態を確認してみました。activeになっていますので大丈夫ですね。

 

最後の後始末として、VPSコンソールから、VNCServerを停止して終了になります。

 

 

本当に大変な作業ですが、この記事を見れば来年は多少は楽になる事でしょう。

【追記】細かく説明を書いているつもりでしたが、1年経過すると細かい部分で躓きました。2024年の更新にて補足を追加しました。