2021/1/16(土)

今日は共通テストがあったらしい。自分がセンターを受けたのはもう2年前になる。

自分はせっかく第一志望の大学に受かって、お前は一体何をやり遂げた?穀潰しめ!2021年すら、もう1/20が過ぎてしまったじゃないか!


縄跳びをやった。200回×3セット。


なんかホワイトボードに適当な落書きを繰り返して精神的に何となくしっくりくるイメージを探していたのだが、こんな感じのイメージが出てきてしっくりきた。

これが何か大事にするべきものなのか、それとも乗り越えるべき何かなのかはちょっと良く分からない。

左の何かでかいのは口がすぼんでいて、でも何かがそこから染み出しているような感じがする。輪郭がすっきりしていて風船のようにぱんぱんに膨れている。これは中に何が入っているんだろう。

右下の縮こまっているやつは口が無い。輪郭が少しぐちゃっとしている。これは?


PostfixとDovecotをかなり勉強した。メールサーバの構築というのは中々大変だ。

Postfix:SMTPを提供。送信もするし、メールリレーで自分の所のが来たら保存するということもやる。

Dovecot:POPとIMAPを提供。既に保存されているメールのデータを見せる役割。

SASL:パスワード認証の仕組みを持たないPostfixに認証の仕組みを提供。なおDovecotの方は自前で認証の仕組みを持っている模様。

このあたりの基本はいいのだが、設定ファイルの内容が膨大過ぎて頭がパンクしそうだ。実際に設定すればいい内容についてこのページがかなりきっちり説明してくれていて助かる。

しかし一つ気になったのだが、そのページに従ってsaslpasswd2でSASLのユーザーを登録すると/etc/sasldb2にユーザーのデータが保存される。しかしこのファイルの中身を見ると、生パスワードが見えてしまうのだ。これいいの?だめじゃない?

あと、dovecotの認証で「Password Scheme」の概念と「authentication mechanisms」の概念が別にあるらしいのがややこしい。(参照)前者がパスワードを何でハッシュ化するかで、後者が送信するパスワードをどう暗号化するか、という話のようだ。

一番参考にしたページがその両者と、さらにSASL認証をCRAM-MD5で統一してしまっているので分かりづらい。つか何で全部で使える名前が存在するのさ…

Password Schemeはdoveadmが出力して/etc/dovecot/usersに書くパスワードをハッシュ化する関数の話で、auth-passwdfile.conf.extのargsのschemeで指定するものと思われる。なんかデフォルトだとscheme=CRYPTとか書いてあった。デフォはbcryptらしい。

authentication mechanismはこのページを見る限り、Dovecotとの通信にSSLを利用しているならその中においてパスワードが平文であっても問題はなさそうだ。例のページでは10-auth.confで「cram-md5 plain login」としてるけど単に「plain」で良さそう?

さらにSASLにもauthemtication mechanism相当の設定がある。/etc/sasl2/smtpd.confで指定しているやつ。DovecotとSASLの認証機構は別々にあるので、冷静に考えるとまあそりゃそうだ。ややこしいけど。

問題はSASLのPassword Schemeを指定する方法は無いのかということだ。sasldb2に生パスワードデータが保存されている問題はここに繋がる。SMTPはSSL上でする前提なんだからさー。認証する場面で暗号化したって大した意味無いんよ。それよか保存されているパスワードをハッシュ化したい。サービスの運営者でも容易にユーザパスワードを知れないって大事よ。

どうやらsmtp_sasl_password_mapsというオプションがあるっぽいのだが良く分からん…


日報を書く時間が最近長いのだが、書きながら知識を整理しているからだろうという感じがする。日記と別に普通に勉強用ノートがあるべきということを今更感じてきた。

foolslab.net/lablogをその用途で使うべきなのだが、いかんせん完成した記事しか載せない感じの運用にしてきているので切り替えるのはちょっと躊躇われる。まあでもその方が良いか。完全に完成してまとまった記事はfoolslab.net/doの方でシリーズ化する感じということにすれば、lablogの方に未完成気味な記事が多少あっても問題あるまい。

Categories: