コンテンツ
質問
Helix CoreサーバのSSL設定を行う方法を教えてください。
回答
以下手順でHelix CoreサーバのSSLサポートを有効化します。
手順
■ Linuxの場合
1.SSLキーと証明書を格納するディレクトリの作成
mkdir /master/root/sslkeys
※ 作成したディレクトリにはHelix Coreサーバを実行するOSユーザがアクセスできるよう権限を設定します
2.環境変数 P4SSLDIRを設定
Helix Coreサーバの実行OSユーザ(ここでは、"perforce")でログインし、以下のコマンドを実行します。
su - perforce
export P4SSLDIR=/master/root/sslkeys
3.証明書作成
証明書を作成し、確認を行います。
p4d -Gc
ls -l /master/root/sslkeys
-rw-------. 1 perforce perforce 1180 8月 4 11:28 certificate.txt
-rw-------. 1 perforce perforce 1704 8月 4 11:28 privatekey.txt
4."P4PORT"の変更
起動時に使用される"P4PORT"を変更します。
"P4PORT"は、p4dctl.confファイル、もしくは、サーバ仕様で定義されています。
ここでは、p4dctl.confファイルで定義されている場合の修正例を記載します。
Environment
{
P4PORT = ssl:1666
P4ROOT = /master/root
P4USER = super
P4NAME = master
P4SSLDIR = sslkeys
PATH = /bin:/usr/bin:/usr/local/bin:/opt/perforce/bin:/opt/perforce/sbin
}
5.Helix Coreサーバ(P4D)の再起動
"p4dctl"コマンドを使用して、Perforceサーバを再起動します。
p4dctl restart master
■ Windowsの場合
1.SSLキーと証明書を格納するディレクトリの作成
mkdir C:\sslkeys
2.環境変数"P4SSLDIR"を設定
"p4 set"コマンドを使用して"P4SSLDIR"を設定します。
p4 set P4SSLDIR=C:\sslkeys
3.証明書作成
証明書を作成し、確認を行います。
p4d -Gc
dir c:\sslkeys
c:\sslkeys のディレクトリ
2020/08/14 14:48 <DIR> .
2020/08/14 14:48 <DIR> ..
2020/08/14 14:48 1,196 certificate.txt
2020/08/14 14:48 1,704 privatekey.txt
2 個のファイル 2,900 バイト
2 個のディレクトリ 3,900,772,352 バイトの空き領域
4."P4PORT"の変更
"P4PORT"の設定を変更します。
p4 set -S Perforce P4SSLDIR="C:\sslkeys"
p4 set -S Perforce P4PORT=ssl::1666
5.Helix Coreサーバサービスの再起動
Helix Coreサーバサービスを再起動します。
p4 admin stop
net start Perforce
■ 確認
Helix Coreサーバの設定が終わったらSSL接続の信頼性を確立します。
p4 -p ssl:server:1666 trust -y
The fingerprint of the server of your P4PORT setting
'ssl:server:1666' (XXX.XXX.XX.XX:1666) is not known.
That fingerprint is 3E:E0:84:44:51:D6:F3:C7:A5:C7:33:8F:67:C6:52:7E:CB:E5:49:E0
Added trust for P4PORT 'ssl:server:1666' (XXX.XXX.XX.XX:1666)
"p4 -Ztag info"コマンドを実行して「serverEncryption encrypted」と表示されることを確認します。