ドメイン名を変更しました

旧来の daybook.biz から、新たに loginterests.com にドメイン名を変更しました。気分転換というか、既に(というか、最初から)日誌になってなかったので、興味のあることをつらつら記録していく、という現状に近い意味を持たせようか、と。 あと、サーバーを Debian Buster にアップグレードしたんですが、なぜか daybook.biz だけ不調になりまして、ここも心機一転。Wordpress から、Hugo へプラットホームを変えました。サイトジェネレータ型のいいところは、素の HTML/CSS/Javascript を置くだけなので、システムの変更に強い点。今回、図らずも Wordpress はその弱点を晒してしまったということで。Worddpress 本体は、PHP のバージョンが上がってもきちんと対応してるので、まあ、使ってるプラグインとかテーマが悪いのでしょう。 細々続いているこのサイトですが、今後ともよろしくお願いします。はい。 なお、一応、旧来のサイトも残してあります。見てみたいという奇特な方は、こちらからどうぞ。

Vanilla Forums

Debian GNU/Linux 10 Buster をインストールした VPS に、nginx を入れて、Vanilla Forums を立ち上げたので、そのメモ。Web サーバーに Apache を使う場合は、.htaccess のひな形が予め仕込まれてるので、注意点はない。 まずは、nginx と php をインストール sudo apt install nginx sudo apt install php php-apcu php-bz2 php-cli php-curl php-fpm php-gettext php-imagick php-imap php-mbstring php-mdb2-driver-mysql php-mdb2-driver-pgsql php-mysql php-pgsql php-readline php-tokenizer php-xml php-xmlrpc php-zip Github からリリース版を取得。適切な位置 (仮に、/srv/vanilla とする) へ展開。 nginx の server {} ディレクティブ内で以下のように設定。 root /srv/vanilla; # Add index.php to the list if you are using PHP index index.php; # Block some folders as an extra hardening measure.
Read more

Newspipe のインストール

Feedbin の設置には成功したものの、どうやってもフィードを更新してくれなくて、使用を断念したが、他によさげなアグリゲーターがないか、😎 Awesome lists about all kinds of interesting topics で探したところ、Newspipe が使いやすそうだったので、これをインストールしてみた。 結果から言うと、丸二日かかって稼働に成功。やったね!😁 まず、Python 3.7 以上が必要だが、Debian 9 (Stretch) に入っているのは、3.5。ということで、ソースからインストールする。現時点での最新版は、3.7.3。 最初に、前提となるパッケージをインストールしておく。 sudo apt install -y build-essential python-dev python-setuptools python-pip python-smbus libssl-dev libffi-dev zlib1g-dev libreadline-gplv2-dev libsqlite3-dev libbz2-dev libncursesw5-dev libgdbm-dev liblzma-dev uuid-dev tk-dev zlibc libpq-dev libmariadbclient-dev sudo apt install -y apache2-dev sudo pip install pipenv 次に、適当なところでアーカイブを展開し、以下を実行する。 ./configure --enable-shared --enable-optimizations make sudo make altinstall sudo ldconfig –enable-shared オプションって推奨されてないんじゃないの?と思う人もいるかも知れませんが、mod_wsgi に共有ライブラリが必要なので、指定せざるを得ません。最後の ldconfig は、Python 共有ライブラリを認識させるためのおまじない。やっておかないと実行時にエラーが起きます。 Python がインストールできたら、PostgreSQL も必要なので、インストールしておく。うちは、別インスタンスにインストール済みなので、パス。いずれにせよ、データベースを作成しておく。
Read more

Feedbin のインストール

結果的に、動作しなかったが、勿体ないので、記事は残しておく。 ニュースサイトの閲覧に、サーバー設置型であるニュースフィーダーの Fever を使っているのだが、ディスコンになってしまって、乗り換え先を探していたところ、オープンソースで公開されている Freebin がよさげだったので、Debian GNU/Linux 9 Stretch にインストールしてみた。Feedbin に月 $5 払えば、インストールなどいらないのだが、ドキュメントに書かれていない設定が多数あって、試行錯誤に丸一日費やしたので、どこかに残しておかないと勿体なかったというのもある。😁 まず、Stripe.com のアカウントが必要なので、サインアップする。 ダッシュボードの「テスト API キーの取得」に、公開可能キーとシークレットキーがあるので、これをいったんコピーしておく。 次に、サイドバーの Billing → 商品から、商品を 9 種類追加する。商品ごとの料金プランで、API ID に以下の値をひとつずつ設定する。面倒だが、Stripe.com に該当の API ID を持つ商品(料金プラン)がないとエラーになるので、頑張って設定する。 basic-monthly basic-yearly basic-monthly-2 basic-yearly-2 basic-monthly-3 basic-yearly-3 free timed trial 設定が終わったら、インストール作業に入る。まず、Feedbin を実行するユーザーを作成する。 sudo useradd -m feedbin 実行には、memcahed、elasticsearch、ruby が必要なので、インストールする。ただし、システムデフォルトの ruby は、バージョンが古い (2.3) ので、rvm から必要なバージョンを導入しなくてはならない。(無論、rbenv から導入してもよい) sudo apt install dirmngr sudo apt install apt-transport-https sudo apt install curl sudo apt install memcached sudo apt install -t stretch-backports redis sudo gpg --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E37D2BAF1CF37B13E2069D6956105BD0E739499BDB curl -sSL https://get.
Read more

小槌をインストールしてみた

サーバーインストール型の家計簿があるのを見つけて、インストールしてみたので、手順を備忘録として残しておく。家計簿ソフトの名前は、小槌 (GitHub リポジトリ) まず、node.js をインストール curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash - sudo apt install -y nodejs 続けて、ruby その他をインストール sudo apt install -y ruby ruby-dev build-essential zlib1g-dev MySQL/MariaDB のライブラリをインストール sudo apt install libmysqlclient-dev または、 sudo apt install libmariadbclient-dev-compat Debian 9 stretch デフォルトの gem はバージョンが低いので、アップデートする。 gem -v 2.5.2.1 sudo gem update --system (省略) gem -v 3.0.3 Bundler をインストール sudo gem install bundler GitHub から、ソースをクローン。 sudo git clone https://github.com/everyleaf/kozuchi.git Bundle を使って、必要なモジュールをインストール
Read more

Pydio Cells の隠し仕様

ファイル共有サーバーソフト、Pydio が、内容を一新、Go でスクラッチから書き直されて、Pydio Cells となった。 最近になって、更新のための時間が取れたので、インストールしてみた。ところ、このブログも乗っかってる専鯖上の VM には問題なくインストール完了。ところが、ストレージ目的で借りている VPS で、所謂ヌルポインタエラーが出た。フォーラムで質問しても解決しなかったが、うまくいったケースとそうでないケースを見比べて違いを埋めていった結果、Pydio Cells は、プライベート IP アドレスがないとセグメンテーションフォールトを起こす仕様になっていることがわかった。 ドキュメントのどこにも書いてないが、ソースではしっかりチェックされてて、確かにプライベートアドレスがないとエラーになる箇所があった。ところがそのエラーをチェックせずに実行を継続しているので所謂ぬるぽになっている。明らかなバグ。フォーラムで報告しておいた。 [2019/03/15 追記] バージョン 1.4 でこの問題が解決されていることを確認しました。

I/O Flood 最高!

突然、このブログを含むサーバー群にアクセスできなくなった。VM を実行しているホスト自体が落ちたようだ。 そこで、サポートに連絡したら、一時間かからずに復旧してくれた。何でもサーバーのマザーボードが壊れたらしい。 新しいマシンにディスクを移動して、設定を調整した上でブート、疎通確認までしてくれた。マネージドでもないのに。しかも、何気に CPU が、Xeon L5520 (4コア8スレッド) デュアルから、Xeon L5639 (6コア12スレッド) デュアルにアップグレードされている。どうやら同型機は売り切れていたらしい。追加料金は一切なし。 やっぱ、専用サーバーを借りるなら、I/O Flood に限る!との思いを新たにした。ありがとう!I/O Flood!

メールサーバー間の SMTP 通信を暗号化する

メールサーバー間の通信で、TLSを使った暗号化が可能なのは知っていたが、面倒なので放置していた。 が、Gmail などで暗号化通信で送られてきたメールにはその旨記載があったり、世の中も動いてきてるので、今回、対応することにした。 Debian の場合 apt install ca-certificates で、CA証明書を導入しておくことを忘れない。 /etc/postfix/main.cf に以下の行を挿入。 smtp_tls_CAfile = /etc/ssl/certs/ca-certificates.crt smtp_tls_security_level = may smtp_tls_loglevel = 1 FreeBSD の場合 pkg install ca_root_nss で、CA証明書を導入しておくことを忘れない。 /usr/local/etc/postfix/main.cf に以下の行を挿入。 smtp_tls_CAfile = /usr/local/etc/ssl/cert.pem smtp_tls_security_level = may smtp_tls_loglevel = 1 これで、送信時に暗号化通信を行える相手には、暗号化して送信し、そうでない相手には平文で送信するようになる。 共通 次に受信時の暗号化通信だが、メールのヘッダに暗号通信の記録を残すことを含め、main.cf へ次の行を挿入。 smtpd_use_tls=yes smtpd_tls_received_header = yes 無論、SSL 証明書を Let’s Encrypt などから取得して、設定しておくことを忘れない。 以上で対応は終了だった。簡単すぎて拍子抜け。もっと早くに対応しておくべきだった。

NetBSD の virtio は、vhost-net に対応していない

調子に乗って、NetBSD もインストールしてみた。 最初、ネットワークアダプタを認識してるのに外部へも外部からも通信できなくて頭を捻ったのだが、kvm の vhost-net を off にしたら問題なく通信するようになった。他の BSD が vhost-net に対応していたので、これはちょっと意外。

最近のBSD の virtio 対応状況

NetBSD は試していないのでわからないけれども、FreeBSD、OpenBSD、DragonFly BSD はすべてデフォルトで virtio ドライバを搭載しているので、普通に kvm 上でインストールできる。進歩したものだ。