Proxmox VE 4.2の管理コンソールのSSL証明書をプライベートCAで払い出す
Pocket

Proxmox VE4.2でSafariから仮想コンソールを開こうとすると、以下のようなエラーが出力される場合がある。

TASK ERROR: command '/bin/nc -l -p 5900 -w 10 -c '/usr/bin/ssh -T -o BatchMode=yes 192.168.0.112 /usr/sbin/qm vncproxy 123 2>/dev/null'' failed: exit code 255

 

このエラーが出る原因だが、Proxmoxの証明書をデフォルトのまま(オレオレ証明書のまま)利用していると、信頼できないページということでSafari側でNoVNCの実行をブロックするためのようだ。
一応、証明書を開いて”このページは信頼できる”とかで設定をしてやるか、もしくはブラウザをChromeにしてやることで仮想コンソールを使えなくはないが、できれば綺麗に使いたいもの。

一応、Let’s Encryptを使って処理をする方法もあるにはあるのだが、いかんせん外から名前解決して接続できる状態じゃないといけないようで面倒くさい(仮想基盤なんて、基本的に内部ネットワークで利用されている場合が多いので)。なので、プライベートCAで証明書を発行して置き換えてやることにする。

すでにプライベートCA自体は構築済みとし、普通に証明書の発行が終わった状態から(証明書の発行やCAでの署名方法についてはリンク先参照)。クライアントにはクライアント証明書をインストール済みとする。なお、Proxmoxの証明書は証明書+中間CA証明書の形式にする必要があるので作成時には注意。

Sponsored Links

作成した証明書(proxmox_full.crt)と鍵ファイル(proxmox.key)をscpでProxmoxホストの「/tmp」配下に転送したら、以下のコマンドでファイルの置き換えをする。

cp /tmp/proxmox_full.crt /etc/pve/nodes/$(hostname)/pveproxy-ssl.pem
cp /tmp/proxmox.key /etc/pve/nodes/$(hostname)/pveproxy-ssl.key
systemctl restart pveproxy

 

これで、あとはWebブラウザからアクセスすれば正常にアクセスできるようになる。

20161127_234342000000_

 

Let’s Encryptで発行する方法もよさそうだけど、いろいろと考えるとプライベートCAちゃんと運用した方が結果的にはいいのかな。

Pocket

Written by blacknon

インフラ系のSE。一時期はプログラマ。 仮想化とオープンソースに興味あり。一日中寝てたい今日このごろ。 スペインとかで働きたいなぁ…(シエスタがあるので)

Leave a Comment

メールアドレスが公開されることはありません。