タグ「unix」が付けられているもの


NextCloud multikeyencryption failed error:0308010C

CentOS Stream 9 を使った所、こんなメッセージが出てサーバサイドの暗号化ができなかったので調査しました。

multikeyencryption failed error:0308010C:digital envelope routines::unsupported

調べると Node.JS 関連の情報が出てきますが、多分違うだろうと考えて SSL 周りを調査。

  • https://www.openssl.org/docs/manmaster/man7/OSSL_PROVIDER-legacy.html
  • legacy
  • fips
  • OSSL_PROVIDER-legacy
  • NODE_OPTIONS=--openssl-legacy-provider
  • https://github.com/nodejs/node/issues/40455

これらの文字列からたどり着いたのは openss.cnf の以下の部分。

修正したらサーバサイドの暗号化が動く様になりました。

ただ、occ preview:pre-generate が動かなくなり、バックグラウンドでのプレビュー画像生成ができなくなります。これが意外と被害でかいんだよね。

当然ですがレガシー対応した形なので、OSとしては少しセキュア度が下がりました。

--- openssl.cnf.orig    2022-01-21 23:28:48.000000000 +0900
+++ openssl.cnf 2022-01-27 13:49:37.335117079 +0900
@@ -58,13 +58,13 @@
 [provider_sect]
 default = default_sect
-##legacy = legacy_sect
+legacy = legacy_sect
 ##
 [default_sect]
 activate = 1
-##[legacy_sect]
-##activate = 1
+[legacy_sect]
+activate = 1
 [ ssl_module ]

変更したあとは php-fpm を再起動して openssl.cnf の設定変更を反映させます。

systemctl restart php-fpm
systemctl restart httpd

無事 サーバサイドの暗号化が動きました。一気に全ファイルを暗号化します。一応解除も試します。

# 暗号化
sudo -u apache php occ maintenance:mode --off
sudo -u apache php occ encryption:enable
sudo -u apache php occ encryption:encrypt-all
sudo -u apache php occ encryption:status
# 暗号化解除
sudo -u apache php occ maintenance:mode --off
sudo -u apache php occ encryption:decrypt-all
sudo -u apache php occ encryption:disable
sudo -u apache php occ encryption:status

使用容量は増えるけど、安心できるからやむを得ず。

20220127171700_nextcloudlogo.jpg

QNAP TS-550 Pro を買って VMware ESXi と接続

前から気になっていた QNAP の NAS を購入してみました。比較的あたらし目の機種で TS-550 Pro にしました。

  • QNAP TS-550 Pro × 1 台
  • ST31000528AS (1TB 500GBプラッタ 7200rpm) × 6 本 (内 1本予備)

さすがにニアライン版の HDD は倍の値段するので普通版、昔から好きで使っている Seagate です。あのファームウェア事件の後も使ってますよ。

買う前までは、結構不安だったのですが、箱、マニュアル、緩衝材、付属品など、いろいろしっかり作られていて、使う前から結構一安心。

まだ箱を開けて間もないのですが、設定は簡単ですでにばりばりに使ってます。まずはテストで負荷掛け気味でね。

電源を入れて、まずは RAID の初期化が動いたのですが、まずここが時間かかりました。その後、RAID のリビルド?。これまたリビルドも結構時間がかかります。リビルド最中に激しく操作したためか勝手に再起動?(やな予感) 再度 0% からリビルドになっちゃいまました。。。追求したいところだけど、この時点では終わるまで我慢で触るの止めときました。

QNAP TS-550 Pro TurboNAS

無事リビルドが終り、こんな形で遊んでます。

  • VMware ESXi と NAS 接続
  • VMware ESXi と iSCSI 接続
  • Windows Server と iSCSI 接続
  • マイパソコンから CIFS 接続

QNAP 側は LACP 設定して 1GbE を束ねて 2 本で hp ProCurve に接続。

簡単手間いらずな NAS のできあがり、良くできてますね。あとは障害時のテストとか RAID6 にしてみたりホットスペアを付けてみたり、これからしばらくテストかな。

IPv6 Ready! ウェブサーバをIPv6化して公開

先日の米民間団体ICANNの発表の影響でしょうか?JPNICのIPアドレス申請を受け付けているサーバが、大量にIP申請されてパンクしたようです。

そんな訳で?ここ m3a.org の自宅サーバも IPv6 Ready にしました。

IPv6 Ready

フィルタ類の動作確認のために Windows XP に ipv6 install で IPv6 環境をインストールして Teredo を使って確認。

ipv6 install

netsh interface ipv6 set teredo enterpriseclient teredo.ipv6.microsoft.com. 30

netsh interface ipv6 show teredo

それでも正しく動いているのかが不安だったので IPv6 Enabled Program に登録してみました。基本的なテストは Pass したので、IPv6 サイトとしては問題なさそう。評判はあまりよくないけど無償でRT57iのDTCPで収容出来るFeel6でIPv6です。

RT57iのDTCPだけど通信していないと切れちゃうみたいで、しょうがないので定期的にping6撃ってます。

VMware ESXi 4.0 / FreeBSD 7.2 amd64 へ環境移行

何度かの切り替えテストを行い、やっと VMware ESXi 4.0 上の FreeBSD 7.2 (amd64) へ移行を完了させました。

rsync や rcp コマンドなどを組み合わせて、何度も何度も移行テストを行っているのでエラーは今のところ無しです。

用途としてはこんな感じ。

  • Web (http, https)
    • Movable Type (mod_fcgid)
    • Word Press
    • XOOPS
    • pukiwiki
    • Fresh Reader (RSSリーダ)
  • メール
    • pop3s, pop3, imap, imaps, smtp, smtps
    • fetchmail / procmail
    • 膨大な過去メールの MH 階層
    • 迷惑メール対策用途
      • SpamAssassin
      • bogofilter
      • bsfilter
  • 管理の為にリモート接続ポート
  • ファイルサーバ
    • samba
    • NFS server
  • Dynamic DNS の更新 (ddclient を改造)
  • データベース (MySQL)

今回の移行でははまったのが amd64 版の FreeBSD 環境にした影響で Fresh Reader に同梱されている iocube にはまったところ。これは amd64 対応版のライブラリを集めてきて無事動きました。あとは Apache 2.2 でキャッシュ関連かな、こっちも結構悩んだので少し勉強になりました。

以前の Celeron 2.3 Mhz から Athron64 LE-1640B (2.7GHz, 512kB, 65nm, 45W) と結構スピードが早くなって、Fresh Reader と Movable Type の管理画面が快適なところが嬉しい。当分はこの CPU で遊べそうです。

あとは、ESXi 側 3ware 9650SE の RAID10 のエラーを ssh 経由で検知する仕組みをどうにか作っておかないといけないのと、UPS の電池切れのため交換が必要なところ。VMFS 信じてます。壊れませぬように。

FreeBSD 7.2 の Superpages

デフォルトで無効になっている様なので、vm.pmap.pg_ps_enabled を 1 にしてみましたが。

以下はどちらも有効に出来ずで read only と出る。

  • sysctl vm.pmap.pg_ps_enabled=1
  • /etc/sysctl.conf : vm.pmap.pg_ps_enabled=1

で、すっかり忘れていた。/boot/loader.conf に設定したら出来ました。

  • /boot/loader.conf : vm.pmap.pg_ps_enabled=1

VMware ESXi 3.5 Update 3 上に FreeBSD amd64 が入っていますが、メモリーは 1GB 程度しか割り当てていない訳で、amd64 の意味もなく、Superpages も。

Oracle to Buy Sun

SPARC と Solaris で有名な Sun が Oracle 社に買収されましたねー。

仕事でも趣味でも Solaris と SPARC マシンを扱っていたので、Sun ブランドが無くなってしまうのは、なんだか悲しいです。買収が完了したら Oracle ブランドになってしまうんですね。Oracle Solaris ?なのでしょうか?

もう一つ気になるのが Sun の持っている MySQL です。

Oracle 社もデータベースの会社なので Sun の買収で MySQL と Oracle Database の二つの大きなプロダクトを抱えたことになるのですが。こちらも、どうなるのだろうか。

hp ProLiant ML115 G5 を NTT-X Store で - 仮想化(ESXi or Xen)開始

また NTT-X Store で 4000 円割引やってたんで1台ゲット。金曜日に4000円引き情報をとある方のブログで知った時は在庫180台、日曜日の購入時点で100個の在庫。一人で何台も買ってるんだろうね。

この格安のは去年もやってたんだけど、AMD CPU は過去 1 度しか使ったことがなかったんで手を出さなかったんだよね、今回は他に人柱になってくれた方がたくさんいたので買いました。

クライアントとしても、もう一台買っちゃいそうだったけど電源いれた時のあの爆音はかなわないからね。あくまでもサーバ用途でね。クライアントは、今サーバとして使ってる ATX のケースと電源が余るし、W数が足りればそのまま使って自作でどうにかするつもり。もう販売停止品だから、抱えすぎても捨てるの困るしね。

NTT-X Store hp ML115 G5

購入に踏み切った理由はこんな感じ。

  • 今の最新 AMD Phenom II が unkown 認識ながら動いたという情報があってしばらく楽しめそう
  • メモリーは 16 GB まで対応しているから、とりあえず格安 non-ECC 2GB x 2 で 4GB
  • VMware ESXi が USB ブートで動くから
  • ESXi でも Smart Array e200 でハード RAID が組めるから。でも遅いらしい。
    • オンボード RAID コントローラーが動けば安上がりなんだけどな。
  • ホストは Xen ベースのどれかを使う予定。最終的には、オンボード RAID も使えるLinux OS としても、自由に使える CentOS かな。
    • Citrix XenServer Express Edition
    • Oracle VM
    • CentOS Xen
  • ホスト OS はファイルサーバ iSCSI, NFS, DNLA, SMB としても兼ねる
  • ゲスト OS に FreeBSD で公開サーバ
    • Xen で仮想化用のイメージじゃなく、物理的ディスクを直接マウント出来るらしいからそれを試す

こんな計画でい行けそうだったからです。気になるのがケースファン、がかなりの爆音らしいです。どうやって静音化をしようかな。とりあえず超格安な non-ECC メモリー、SATA ディスク、E200 128 BBWCC をゲットしなくては。 着払い限定 15,750 円が 11,750 円です。送料と代引き手数料つけて 12,170 円、これを2回の分割払い。

昨日見たときは30個くらいまで在庫が減ってたけど、今は2000円割引の在庫が80個。あともう一台を ESXi ディスクレス化のiSCSI ターゲット用として欲しいな。悩み中。

PFU、HHKB最上位機種初の日本語配列モデル

以前つかっていた Hyper Hacking Keyboad の Professional モデルに日本語配列モデルが出たみたいです。

Lite 版と比べると、Professional 版は格段にキーのタッチがいい感じなんですよ。その分、値段も 24,990 円とかなり高いんですけどね。

日本語だけど、僕には必要のない「かな」は刻印されていないからぱっと見シンプルで好きです。

今回からはキートップだけを、別売りで購入できるんですね。 

Movable Type 4.01 から 4.2 へのバージョンアップ

久々更新!なのに画像とか無し。

出た出た Movable Type 4.2。このブログも Movalbe Type 4.01 なので早速バージョンアップしました。

といっても、いきなり上書アップグレードじゃなくってアップグレードテストしてからね。実際にテストやってみても、何も問題無し。たぶん。

使っているプラグインが少ないとアップグレードも簡単ですね。30分後には本番の環境をアップグレードしちゃいました。

  1. ディレクトリ /mt42j へ新規に Movable Type 4.2 をインストール
  2. テスト用のMySQLデータベースでアップグレードテスト
  3. テスト用の公開ディレクトリで再構築テスト
  4. 必要なプラグインを /mt42j/plugin 等へコピー
  5. PerlDynamic の 4.2 対応版を入れ込み
  6. 本番環境アップグレード実行
  7. テンプレートの "スタティック" ってなったものを "手動" へ変更

あっけなく終わってしまいました。

せっかくなのでコミュニティ機能がついた Movable Type 4.2 です。っていってもテンプレート引き継いでるからコミュニティ機能は使わないけどね。

FreeBSD 6.2 upgrade to 6.3

このブログ "[M]BLOG - Harley-Davidson Road King Life" が動いている自宅のサーバだけど FreeBSD 6.2-RELEASE-p11 とレガシー組になってきたのでアップグレードの準備をしてます。最終的には 7.0-RELEASE までアップグレードを予定しとくけど、怖くてあきらめるかも。短いし。

浜松市のどっかで雷落ちたっぽい

今日の雷は凄かったようだね。自宅の UPS が停電 (落雷) を検知して携帯電話にメールを送ってきました。

あとから聞い話によると、浜松市のどこかに雷が落ちたみたい。

検知時間帯は今日10日の 13:58:21 から 13:59:35 の約 74 秒間。13:54 時点でも 2 秒間の瞬電検知してるなぁ。

PerlDynamic も FastCGI で動かしてみたけど

発生していたInternal Server Errorについては、-idle-timeout オプションを変更してエラーは出なくなりました。

[Wed Jan 24 19:44:25 2007] [error] [client **.**.**.**] FastCGI: comm with (dynamic) server "..../pathto/mt/mt.fcgi" aborted: (first read) idle timeout (30 sec)
[Wed Jan 24 19:44:25 2007] [error] [client **.**.**.**] FastCGI: incomplete headers (0 bytes) received from server "..../pathto/mt/mt.fcgi"

Apache のログを見ていると、こんなログが出ていました。そのまま idle timeout ということで、

*Module mod_fastcgi(英語)

このmod_fastcgiのドキュメントにある-idle-timeoutオプションはデフォルト 30 秒です。Apacheのエラーログを見る限り 30 秒でタイムアウトしているということなので 60 秒に。それでもダメだったのでログを見ながらエイッ 300 秒(^_^;)。

結果 Internal Server Error についても出なくなり、全ての再構築、記事の投稿、保存など一応生活に必要な部分は動きました。はじめで書いたようにプラグインが原因かとも思ったけど、原因はこのタイムアウトでした。

mod_fastcgi の設定については、こんな感じでコメントアウトしていろいろオプションは外してしまいました。動いているしおかしくなったら考えます。

<IfModule mod_fastcgi.c>
  AddHandler fastcgi-script .fcgi
  FastCGIConfig -autoUpdate
  FastCGIConfig -idle-timeout 300
#  FastCGIConfig -maxClassProcesses 4
#  FastCGIConfig -maxProcesses 5
#  FastCGIConfig -minProcesses 1
  FastCgiIpcDir /tmp/fcgi_ipc
</IfModule>

次に、PerlDynamicFastCGIで高速に、

Movable Type 3.34 英語版で FastCGI と日本語メニュー

Movable Type 3.34 の英語版がリリースされましたね。簡単なのでインストール早速試してみました。

英語版でも Japanese が選択できるんだ。3.34 からなのでしょうか、知らなかったです。

Movable Type 3.34 英語版インストール

と思って 3.33 を調べてみると、なんだぁ、むかしから投稿者毎に言語が選べるんだ。。。へー。つづけて、

Movable Type 3.34 英語版で FastCGI と日本語メニュー

Movable Type 3.34 の英語版がリリースされましたね。簡単なのでインストール早速試してみました。

英語版でも Japanese が選択できるんだ。3.34 からなのでしょうか、知らなかったです。

Movable Type 3.34 英語版インストール

と思って 3.33 を調べてみると、なんだぁ、むかしから投稿者毎に言語が選べるんだ。。。へー。つづけて、

ファイルサーバをプライバーシーマーク取得に向けて新設

今日土曜日は、車で伊豆の国市の韮山というところまで納品に行ってきました。

最近、いやかなり前からだけど中小企業もパソコンやコンピュータは必ず導入されています。しかもインターネットへの接続も簡単になり、全てのコンピュータがネットワークへ接続されている時代。初心者ではやっぱり扱いきれないのか、作る方が対応しきれないのか情報の漏洩に騒がれる時代になってきました。便利になったのは良いんだけどねぇ。。
一回インターネット上へ出回ってしまったら、二度と取り戻しは出来ないから、これがまた大変。

国は、「個人情報保護法令」なんて法律もつくったし、さらには、その個人情報など情報を保護し管理運用している会社であることを証明するために、プライバシーマークISMSなどなど、いろいろなのが出てきました。

今では、プライバシーマークを持っていなかったら仕事も出来ない時代になってきてます。個人情報のみではなくISMSではさらに細かなところも。

勤め先のシーポイント社では、個人情報保護の第三者認証である「プライバシーマーク」や「TRUSTe」の取得支援コンサルティング、社員教育を中心に、幅広く手掛けています。

* 株式会社シーポイント
* 第1回 プライバシーマーク取得への第一歩

当然管理者のいない小さな会社では、大きなPCサーバを導入しても管理仕切れず状態になってしまい危険な状況に陥ってしまう。でも情報は保護しなければならない。しかもプライバシーマークも。

ということで、

Movable Type 3.3 へのアップグレード

Movable Type 3.3 がリリースされたようですね。バックアップ取ってから上書きで入れ替え、mt-upgrade.cgi 動かし、少し手直しして完了。簡単でした。

search_templates ディレクトリ内の default.tmpl を書き換えても反映されないと悩んでいたら、ウェブから変更出来るようになったんですね。でもこの default.tmpl ファイル、しかも英語版は何に使うの?

テンプレート「メインページ」に解析エラーが発生しました: <MTTagName>タグが閉じられていません。

新規でブログを作っていないので、省いてしまったけど、テスト用として作ったブログで再構築を行ったところ、↑こんな MTTagName の部分のエラーがでる。「メインページ」というエラーメッセージの情報を信じて、メインページのテンプレートをいろいろ眺めては見たもののわからず。。。

今回の Movable Type 3.3 で追加されたタグクラウド機能。今までは Tagwire を入れていたので、キーワードフィールドを使ってたけど、mt-keywords2tags.cgi を使って一気にタグフィールドへ反映させてみました。Tagwire の使っていた MTTag 部分を MTTagName 変更。Movable Type 3.3 のタグとほぼ一緒だから、テンプレートの MTTag 以外はほとんどそのままで動きました。これで、Tagwire + MT-XSearch だったのが、Movable Type のみで動く形になりました。

さて、今回のバージョンアップでキーワードフィールドと、タグフィールドと 2 個のフィールドが用意されたわけだけど、どのように使っていったらいいのだろうか。

  • キーワード:HTML ヘッダ部分の Keyword へ入れこみ専用
  • タグ:タグクラウド用

のように使い分ければ良いのだろうか。それにしても、キーワード=タグになってしまいそうだな。とりあえずキーワードには関連するキーワードを片っ端からつっこんでみようかな。
あと、それにしても InternetExplorer だと、文字ちっこい。Firefox ちょうどよいかんじですね。

追記: ↑の解析エラーについては、plugins, lib, extlib, php の各ディレクトリを整理したら直っちゃいました。3.2 の頃のプラグインが原因なのだろうか。原因特定までは出来てないです。

Perl のバージョンアップ後 perl-after-upgrade 実行

しばらくやっていなかった ports の portupgrade だけど、先日実施した時 perl-5.8.7 から perl-5.8.8 へアップグレードが動きました。

/usr/local/lib/perl5/5.8.7
/usr/local/lib/perl5/5.8.8
/usr/local/lib/perl5/site_perl/5.8.7
/usr/local/lib/perl5/site_perl/5.8.7

といったようにモジュールが 2 個のディレクトリ分かれてしまうのがイヤだったので、整理するために perl-after-upgrade を実施しました。

perl-after-upgrade 便利じゃん、/var/db/pkg/*/+CONTENTS 内で 5.8.7 に依存していたモジュール全てが 5.8.8 に変わって、さらにモジュールも 5.8.8 に自動的に移動してくれました。

 

ports/php4にapacheモジュール(libphp4.so)が入ってた

以前、FreeBSDのportsでphp4関連のインストールするためphp4-cgi、php4-cli、mod_php4あたをいろいろ入れてみました。しかしなぜかconfrictしあっていて同居させることができずかなり悩んだことがあります。そのとき最終的にはmod_php4を入れた後に「/usr/local/bin/php」ファイルを無理矢理作り、そのファイルをコピーして組み合わせてました。

後からわかってたんだけど、「lang/php4」を入れれば良かったらしいです。それだけで「/usr/local/libexec/apache/libphp4.so」、「/usr/local/bin/php」の両方がインストールされることがわかりました。

今回これを、正しくインストールさせようということで、いったん「pkg_delete -f mod_php4-4.4.2_1」とやってmod_php4のみ強制削除し、再度lang/php4を入れました。

ここでちょっと問題発生。

php4を入れただけではapacheモジュール(libphp4.so)がインストールされないんです。コマンドライン版のみインストールされてました。

いろいろGoogleって探しまくった結果、php4のオプション指定でapacheを有効にしてあげなくてはならなかったのです。

[lang/php4/Makefile] OPTIONS= CLI "Build CLI version" on \ CGI "Build CGI version" on \ APACHE "Build Apache module" off \

Makefileを見るとAPACHEのデフォルトがoffに。。。

[X] CLI Build CLI version [X] CGI Build CGI version [X] APACHE Build Apache module [ ] DEBUG Enable debug [X] MULTIBYTE Enable zend multibyte support [X] IPV6 Enable ipv6 support [ ] REDIRECT Enable force-cgi-redirect support (CGI only) [ ] DISCARD Enable discard-path support (CGI only) [X] FASTCGI Enable fastcgi support (CGI only) [X] PATHINFO Enable path-info-check support (CGI only) [ ] OPENSSL Build static OpenSSL extension

コンパイル時のオプションで3番目のAPACHEを有効にすればlibphp4.soが入ります。

20060506: AFFECTS: users of PHP AUTHOR:ale@FreeBSD.org

The old PHP slave ports (phpN-cli, phpN-cgi and mod_phpN) were removed in favour of unified PHP ports that allow building any combination of PHP SAPIs (cli, cgi and apache module). The PHP CGI binary was renamed to php-cgi, so you should update the path in your script. To simplify the update process, *only* for this release a 'php' compatibility symlink to php-cgi will be created if you don't select the CLI SAPI. Before the upgrade you *should* run 'make config' in lang/php4 or lang/php5 to configure the SAPIs you want to install. As a consequence the default binary packages include the CLI and the FastCGI SAPIs.

しっかり、ports/UPDATINGにも書かれてますね。やっぱりしっかりドキュメントは読まないとね。