Proxmoxでサーバ構築

イメージ
これまでテスト用にi5第8世代の廃棄PCを使用してきた。 とはいえ今の所何も問題は起きていないが、入れ替えも視野に入れ予備サーバを用意することに。 - メモリ:16GB - SSD:500GB - DDNS+Let's Encrypt - Ubuntu24.04 この環境なので、すぐに構築し直すことは可能だが、とりあえずこのまま置いておいて別のサーバを立てることにする。 最初はRaspberryPiで構築しようと思ったけれど、本体電源+外付けHDD電源+ディスプレイ電源と考えると、邪魔なので廃案。 そこで廃棄しようと思っていた「Lavie NS300/N」が手元にあったので、これを利用することに。 一応バッテリーは正常に動作するので、UPS代わりにそのまま。 - Core™ i3-8145U(やや非力) - メモリ:8GB(少ないが…) - HDD:1TB なので、これまで使用しているものより、若干スペックダウン。 ただ用途は、非常勤で教えに行っている専門学校生用の練習マシンとする予定なので、まぁ問題なさそう。 Proxmox導入 直接、Linuxを導入してもよいのだけれど、今回は Proxmox を導入し、その上でUbuntu Serverを動作させる計画。 USBにProxmoxのイメージを焼いて、インストールすれば問題なく完了。 ただ、現在のバージョンはdebian - trixieがベースになっているので、若干参考になるサイトが少なめ。とはいえ旧版のは参考になるので調べつつ… HDDなだけあって、最初の起動は少し遅いものの、立ち上がってしまえば問題ない。 さぁ、VMにするかCTにするか…。 GUI使うのであれば、VMかなぁ。サーバだしCTでいいかぁ。 という程度の選定で、CT(コンテナ)で進めることに。 - メモリ:4GB - CPU:2 - HDD:20GB(root disk) - HDD:400GB(home用) - Ubuntu24.04 という構成で進めることにした。 テンプレートを用意して、初期設定を行い起動。 まぁすんなりと入った。 液晶を閉じたら、Suspendになってしまったので、若干設定変更。 $ sudo nano /etc/systemd/logind.conf HandleLidSwitch=ignore $ sudo sy...

Crypt::SSLeayが入らない

Perlでの作業中

ちょっとスクリプトからWebページをゲロってこようと思い、LWP::UserAgentなどを使って、取得していた。

ちょっとhttpsあたりも必要に迫られ、getしようとしたらエラーを吐いてくる。

ふむふむ。
ぐぐってみると、Crypt::SSLeayを入れろとな。

ちうことで、
$ sudo perl -MCPAN -e shell
で、CPANから入れることに。
cpan[1]> install Crypt::SSLeay
通常は、これでOKなはずなのに…。エラー吐いてくれます。
でもなぁ、CPANから自動で入れているのにmakeで転けられても…。

でも、昔の出来事を思い出してテストして見ることに。
「接続を拒否されました」というメッセージが気になる。

Linuxの初期に良くあったのだけれど、これってLANG=Cでないと動かないんじゃ?

ちゅうことで、再度やり直してみる。

英語モードで再度実行!

一旦、抜けてcpanの起動から。
$ LANG=C sudo perl -MCPAN -e shell
表示はもともと英語だし、何も問題ないはず。
同様に、Crypt::SSLeayを入れてみる。

全てのテストに合格して、無事インストール完了!!
やはりな!って感じです。

はっ!! インストールが目的ではなかった…。

さて、SSLが使えるようになっているはずなので、テストする。
500 Can't verify SSL peers without knowning which Certificate Authorities to trust
orz...

SSL証明書と一致しないらしい…。

もうひと踏ん張り。

SSL 証明書のエラー時の対応

 どうやら、良く発生するようで…。あちこちに対応策が書かれていた。

[Perl] LWP::UserAgent で SSL 証明書のエラーへの対応
の記述がわかり易かった。


  1. ホスト名の検証をしない
  2. CAを明示する

いやいや、1はまずいんでは?という思うので、2の方針で。

Mozilla::CAを入れれば良さそう。

さっそく、cpanでMozilla::CAをインストール。
スクリプトの最初にuseを突っ込む。

でもダメやった…。
CPANで「Crypt::SSLeay」をインストールする際のエラー対処」なんて素敵なページを見つけて実行するも、変化なし。

検証しない方向でテスト

なんやかんやと、スクリプトを書き換えて、結局この辺りで落ち着いた。

use LWP::UserAgent;
BEGIN {
   $ENV{PERL_NET_HTTPS_SSL_SOCKET_CLASS} = "Net::SSL";
   $ENV{PERL_LWP_SSL_VERIFY_HOSTNAME} = 0;
}
my $agent = LWP::UserAgent->new(
    ssl_opts => { verify_hostname => 0 },
);
環境変数の変更と、念のためオプションを設定してやったら、エラー無しで動作した。

しかしなぁ…。
そのうちバージョンが上がると、何もなかったように動いたりするんだろうな…。

パッケージの中身まで解析する時間的余裕はないので、まぁひとまずOKということで…。

コメント

このブログの人気の投稿

Ubuntu24.04 でGUIが死んだ

VirtualBoxが異常

MEGAにも弱点があった?