
(Postgre)SQLサーバを使ったDovecotとPostfixのユーザ認証
- 2023/01/04
- aikawa
DovecotやPostfixはデフォルトでLinuxのユーザをそのまま利用できますが、今回はSQLサーバに登録したユーザを利用できるようにします。
以前のように、CentOSでローカルでのテスト環境で動くようにしますので、Maildir形式の設定やSMTP認証は済んでいる所へ追加となります。
この投稿の続きを読む »









Let’s Encryptの証明書をPostfix,Dovecotで利用する
- 2022/11/29
- aikawa
Let’s EncryptでWebサーバのSSL/TLS証明書を結構利用しますが、それをメールサーバで利用してRoundCubeでSSL/TLSでのアクセスを試します。
たまたまドメインを割り当てていたCentOS 7のサーバが有ったのでそれを使いました。
この投稿の続きを読む »









CentOS Stream 9でRoundCubeの簡易テスト環境を作る
以前CentOS6でRoundCubeのテスト環境を作っていましたが、今回はCentOS Stream 9です。
postfixにSMTP認証がデフォルトで入っているらしく、無効にする事も考えましたが調査が必要そうなのと、それよりもSMTP認証をした方が早そうだったので、設定する事にしました。
この投稿の続きを読む »









CentOS 6のcertbotがdeprecatedになった
- 2022/11/18
- aikawa
CentOS 6でcertbotによる更新がされないなと思って手動で実行してみたら、python3.5じゃないと動かないよ、とまずエラーが。
CentOS Vaultでrh-scloを設定してrh-python35を入れ scl enable rh-python35 bash してみましたが、無情にも今度はdeprecatedと出て結局動きませんでした。もうCentOS 6ではcertbotは動かないようです。






Framework7 Vue を調査する
- 2022/04/04
- murave
- Framework7
- Vue.js
以前の記事『Framework7のrouter.backで戻っても最新データに更新したい』でいろいろと調べてたときの手法をまとめてみるなど。
情報収集からデバッグ手法まで雑多なので曖昧な「調査する」というタイトルにしてみました。
そうそう、せっかくなので本家(https://framework7.io/)のスポンサーのところをキャプチャして貼っときますね。弊社が載ってます。
この記事にもスポンサーが更新されてない日本語サイト(https://framework7.jp/)しかでてこなかったりしますし、少しは主張を。

エイプリルフールネタ
- 2022/04/01
- aikawa
エイプリルフールだしネタ枠でこんなの作ってみました。
https://github.com/lancard-aikawa/StrSig
ドメインやTwitter等のユーザで、似ている紛らわしい名前で誤認させようとしているのって、本来の単語でないのが多いので、そういった情報が有ればある程度防げるのではと思い。
(小文字のエル(l)と大文字のアイ(I)を付け替えるとかPunycodeでアスキーコード外の文字を付けるとか)
文字列のサイン(シグネチャ)やグラフ化が標準化されると良いなとプロトタイプを作りました。
入力した文字列をCodePoint表示して比較出来ます。
次の例ではAprilFoolとAprilFooIを比較しています。
UpperかLowerか、CodePointを表示、ASCIIコードならコードポイントの長さを横棒で比較出来るので割と違いが分かりやすいかも知れないとか。
あと、フォネティックコード入れようかと思ったけど冗長になるので省きました。




https://github.com/lancard-aikawa/StrSig
ドメインやTwitter等のユーザで、似ている紛らわしい名前で誤認させようとしているのって、本来の単語でないのが多いので、そういった情報が有ればある程度防げるのではと思い。
(小文字のエル(l)と大文字のアイ(I)を付け替えるとかPunycodeでアスキーコード外の文字を付けるとか)
文字列のサイン(シグネチャ)やグラフ化が標準化されると良いなとプロトタイプを作りました。
入力した文字列をCodePoint表示して比較出来ます。
次の例ではAprilFoolとAprilFooIを比較しています。

UpperかLowerか、CodePointを表示、ASCIIコードならコードポイントの長さを横棒で比較出来るので割と違いが分かりやすいかも知れないとか。
あと、フォネティックコード入れようかと思ったけど冗長になるので省きました。






Framework7のrouter.backで戻っても最新データに更新したい
- 2022/03/31
- murave
- Framework7
- Vue.js
関係の技術記事書こうかと思ったんだけど、リタイアしたのでこれだけ書いとこうかと
— murave (@murave) March 30, 2022
昨日はリタイアしたけど、今日はがんばる。

VMのCentOSからDockerやComposerを取得出来ない
- 2022/03/18
- aikawa
VMでCentOSのテスト環境を作ってDockerやComposerを入れようとしたら、取得に失敗しました。
yum(dnf)では他のrpmは取得出来るし、名前引きも問題無し。
ホストOSのWindowsからは取得出来るので、ゲストOS側のみの問題のようです。
色々と見た感じ、アクセスするドメインにIPv6で接続する所が全滅してる様子(wgetで試すと数分待たされた後IPv4で取得し直していた)
nmtuiでIPv6を無効にしても駄目だったのでOSレベルで無効にしました。
再度試すと、問題無く取得出来ていました。
滅多にないかも知れない内容ですが。




yum(dnf)では他のrpmは取得出来るし、名前引きも問題無し。
ホストOSのWindowsからは取得出来るので、ゲストOS側のみの問題のようです。
色々と見た感じ、アクセスするドメインにIPv6で接続する所が全滅してる様子(wgetで試すと数分待たされた後IPv4で取得し直していた)
nmtuiでIPv6を無効にしても駄目だったのでOSレベルで無効にしました。
grubby --update-kernel ALL --args ipv6.disable=1
reboot
参考:https://www.server-world.info/query?os=CentOS_Stream_9&p=initial_conf&f=3再度試すと、問題無く取得出来ていました。
滅多にないかも知れない内容ですが。






PHPでTLS/SSL証明書の有効期間を取得
昔使ったのでメモ用に。
SNI(同じIPアドレスで複数ドメイン)に対応するためオプションを付けています。
他にも色々情報が取れますが、今回は使わないので有効期間のみです。
取り合えずwww.php.netをサンプルに取得してみます。



SNI(同じIPアドレスで複数ドメイン)に対応するためオプションを付けています。
他にも色々情報が取れますが、今回は使わないので有効期間のみです。
取り合えずwww.php.netをサンプルに取得してみます。
<?php
$host = 'www.php.net';
$port = 443;
$timeout = 5;
//
$stream_context = stream_context_create(array(
'ssl' => array(
'capture_peer_cert' => true,
'max_redirects' => 0,
'SNI_enabled'=>true,
'SNI_server_name'=>$host,
)
));
$resource = stream_socket_client(
'ssl://'. $host. ':'. $port,
$errno,
$errstr,
$timeout,
STREAM_CLIENT_CONNECT,
$stream_context
);
$cont = stream_context_get_params($resource);
$Data = openssl_x509_parse($cont['options']['ssl']['peer_certificate']);
// span
$tm_start = $Data["validFrom_time_t"];
$tm_end = $Data["validTo_time_t"];
echo date("Y-m-d H:i:s", $tm_start)." - ".date("Y-m-d H:i:s", $tm_end);
出力はこんな感じに。
- 2021-05-18 19:04:38 – 2022-05-18 19:04:38




