メーリングリストをSympaにする

長らくMLといえばfmlを使っておりました。
mailmanも使ったんですがなんかしっくりこない。
しかしfmlもfml8がなかなか進まないのと、
UTF-8なsubjectが文字化けしやすかったりする問題があり(perlの環境によるの?)
MLをガンガン使ってるクライアントに不評でしたので、思い切ってSympaに変えてみました。

オープンソースのメールサーバ/Sympaとは
今年の2月ぐらいから「メーリングリスト」で検索したらSympaが出てくるようになった。
こちらのサイトに掲載されたのが大きかったんでしょうか。

しかしSympa、あまり日本では使われていないのか、情報があんまりない。
フランス語で「サンパ」と読むらしいですよ。

環境: CentOS7、postfix、既にfml8導入済

Sympa yumリポジトリの登録
yumリポジトリ (Red Hat / CentOS) – メーリングリスト管理ソフトウェア Sympa
$ wget 'http://sympa-ja.org/download/rhel/sympa-ja.org.rhel.repo'
# mv sympa-ja.org.rhel.repo /etc/yum/repos.d/
# yum -y install sympa-httpd

MySQL(mariadb)でSympa用にDBとユーザーを作成。
DB:sympa
User:sympa
Pass:(pass)
# vi /etc/my.cnf
[mysqld]
default-character-set = utf8

セットアップ
# sympa_wizard.pl
適当に質問に答えると完了
間違えて答えてもあとでconfigファイルで直せる(はず)

# vi /etc/sympa.conf
domain mydomain.example.com
listmaster admin@mydomain.example.com
lang ja-JP
supported_lang ja
title Mydomain ML
aliases_program postalias

# postalias /etc/sympa/aliases.sympa.postfix
# postalias /var/lib/sympa/sympa_aliases

ここのpostaliasでpermission deniedが出て非常に苦労した記憶があるが、
どうにかして通った…所有者とパーミッションは下記の通りになっている。
-rw-r--r-- 1 sympa sympa 1165 Apr 6 17:29 sympa_aliases
-rw-r--r-- 1 sympa root 12288 Apr 6 17:29 sympa_aliases.db

# vi /etc/postfix/main.cf
alias_maps = hash:/var/spool/ml/etc/mail/aliases, hash:/etc/aliases, hash:/etc/sympa/aliases.sympa.postfix, hash:/var/lib/sympa/sympa_aliases
recipient_delimiter = +

fml8用のaliasesも残してある(併存してるので)
/etc/aliases.sympa.postfix が基本コマンド向け、
/var/lib/sympa/sympa_aliases がML追加されるたびに更新されるファイル

# vi /etc/httpd/conf.d/sympa.conf
Sympa管理画面の設定。適当に認証とか制限とかかけておく。

ここからはGUI。webインターフェースにアクセス。
http://mydomain.example.com/sympa/
管理者アドレスを登録して、あとはメニューを見ればわかる…はず…

よく使う設定
リストの設定変更>送受信の設定>

返信先アドレス (reply_to_header)
値: リスト (list)
すでに存在するヘッダを優先する (apply) : Reply-To:ヘッダを上書き (forced)

件名につける目印 (custom_subject)
[%list.name%]:[%list.sequence%]
※0パディングの桁数を決めたいが方法がわからない

fml8からの移行だったので
・同名のMLがfml8とSympaに存在すると、postfix上も同じアドレスがダブるのでエラー。
切り替えは素早く。
・/var/lib/sympa/list_data/(ml-name)/stats の1つめの値がMLの通し番号。
勝手に書き換えても動いた。

追記2018-04-28

メッセージのサイズ限界が5MBとなっていて不足であったので変更。
リストごとに設定画面から max_size を変更するもできる。
hoge_ml なら /var/lib/sympa/list_data/hoge_ml/config に書き込まれる。

サイト全体のデフォルト設定は /etc/sympa/sympa.conf に書く。
# 最大10MBに設定
max_size 10485760

service sympa restart してもweb管理画面からサイズ限界が変更されたように見えなかったが
service httpd restart したら更新された。

Raspberry Piでキオスク端末を

QRコードを読み取ってwebサーバーにpostするだけの端末が欲しい。
こりゃーキオスク端末の出番だぞ、でも予算かけたくないぞ、ということで
chromestickとかchromeboxとか、AndroidでROM焼きするか、iPadか、などと考えたが
格安にいけるのはRaspberry Piとディスプレイの組み合わせでした。

購入物


7インチディスプレイ。HDMI対応、1024×600。


Raspberry Pi 3 Model B。専用ケースつきのほうが取り回しが良かろうと。透明のを買いました。


電源。弱かったり不安定だと困るのでそこそこ良さげなやつ。


microSDHCカード。Raspbian OSは4GB以上とのことですが、手元に転がってたのはコレでしたので。

早速翌日届く。amazonプライムさすがです。

Raspbian OSのインストール。
Download Raspbian for Raspberry Pi
ブラウザ使用が前提なのでDesktop版をダウンロード。
Version:March 2018でした。torrentが圧倒的に速かった。

zipの中のimgをmicroSDHCにddで書こう…と思ったらubuntu機消してた。
windowsでimg書けるツールを使う。
「Rufus」ブート可能なISOイメージファイルをもとにブータブルUSBメモリを簡単に作成 – 窓の杜ライブラリ

出来たらmicroSDHCカードをRaspberry Piに挿して電源オン!

あっさり起動する。
いきなりデスクトップ環境まで進む。

画面解像度の選択肢に1024×600がないので、作る。
検索すると様々な情報が出てきますが、下記1行を追記するだけで良かったです。
$ sudo vi /boot/config.txt
hdmi_cvt=1024 600 60 3 0 0 0

しかし画面比が直らない…と思ったらディスプレイ側の設定が4:3固定になってました。んもー

起動時、GUIになったらキオスクモードでchromium browserを起動する。
$ vi ~/.config/lxsession/LXDE-pi/autostart
@chromium-browser --kiosk http://192.168.xxx.xxx/

シャットダウン時に物理的に電源を切る必要がありますが、
だいたい立ち上げっぱなしだし、必要十分。
VNCサーバーも設定オンにするだけでいきなり立ち上げられるので
何かあったときもリモート管理がラクです。

追記2018-05-21

・その1
シャットダウンせずに電源をいきなり切っちゃった場合、次回chromium起動時に
「正常にシャットダウンされませんでした」
と表示が出てしまうので、incognitoモードを追加。
@chromium-browser --incognito --kiosk http://192.168.xxx.xxx/

・その2
2台目以降のセットアップのときは、MicroSDをコピーして完了。
Win32DiskImagerを使いました。

Windows で Raspberry Pi のバックアップを取る方法 | Moonmile Solutions Blog

Asteriskで留守電作ったメモ

Asterisk PBXで留守電を受けて、内容をメールで送ってくるようにしたんだけども
まとめてる時間がないのでとりあえず参考にしたURLを列挙しておく。
私はCentOS7に入れた。以前CentOS5でやってたときと比べてあっさり入った記憶。
Brastelの050Freeで受けてます。

Asteriskで050 Freeに留守電を付ける – majishini

バイク野郎のひとりごと: Raspberry Pi 3へAsteriskを構築する — その3

GSMファイルに変換した音声ファイルをAsteriskのIVR音声に使用する – つるながの綴方

WAVをAsterisk用のGSMへ変換する – Qiita

AsteriskによるIP-PBXの構築(SuSE9.3編)

Asterisk cmd VoiceMail – voip-info.org

Asterisk cmd VoiceMailMain – voip-info.org

PC1台をマルチディスプレイで複数人で同時に使用したい

CPUパワーもメモリも余ってたら、マルチディスプレイなんて当たり前だし、
同時に2人や3人ぐらい使ったって良いのでは?
PC Linuxでできたら楽しいのになぁ。

と思ってググってみるが、あまり情報がない。
キオスク端末を2台3台並べたりするのに便利そうなのであとで試してみようというメモ。

Multiseat Configuration — PCの複数席設定、1台のPCを複数人同時利用 – Google グループ
ここが起点。マルチシート(multiseating)って言うんですね。

Build a Six-headed, Six-user Linux System LG #124
2006年時点で6人使ってた例がすでにあり

Configuring multiseat X workstation – lxadm | Linux administration tips, tutorials, HOWTOs and articles
英語で探せばそこそこ見つかりそうなので、そのうちやろう。そのうち。

アメリカでh2o wirelessを使った話

机の上を片付けてたらh2o wirelessのSIMの残骸が出てきたので、
そういえばAPNで苦労したんだった!と思い出しましたので検索できるようにメモ。

以前アメリカに渡航したときはAT&Tのショップへ出かけてSIMを買ったのですが、
空港に着いたらすぐ通信したい!という理由で、国内でh2o wirelessのSIMを買っておきました。
なお私は大手キャリアとのデータ通信契約をしてません(MVNO利用)ので、海外ローミングはできません。

アジア圏などはタイのローミングSIMが良いです。

しかしアメリカに対応しているものは、ない or 高い。
そこで今回は国内でKDDIが扱っているh2o wirelessのSIMを調達したわけです。
先にチャージされているパッケージは30日未満だと発売前とか表示されます。なんだそりゃ。

1週間も居なかったので、あとから自分でチャージするSIMのみのパッケージにしました。

あらかじめ国内でwebからアクティベーションとリチャージを行っておきます。
わかりにくいですが
アクティベーション時に Month Plan LTE $30 を購入、
その$30でリチャージ、です。
このへんは成田空港でやっておきました。

アクティベーション

リチャージ

で、出発。機内でSIMを入れ替えて、現地でAT&Tの圏内になるとSMSが送られてきて
APN自動設定が来ます。

しかしこの当時はMoto G5 plusを使っていたのですが、全然通信できない。
受信はできるが送信できないみたいなへんな状態になっており、大変困る。
なんとかWiFiを繋げて■データ通信設定のページの手順に従うも、自動設定と同じ。

そして検索して試すこと数十分
H2O Wireless APN Settings – BestMVNO
ここの設定を試したら、いけた!
自動設定で入ってきたのと全然違うじゃん!

さらに現地で他のh2o wireless使ってる人に聞いたら
H2O Wireless SIMの使用方法
AndroidはAPNに「Prodata」って入れるだけですよ、ですって!なにそれ!
でもSmartSIMによる自動設定は未推奨って書いてありますね(非推奨だと思うけど)。

一応前者の設定をコピーしておきます。

APN Name H2O APN
APN PRODATA
Proxy
Port 80
Username
Password
Server
MMSC http://mmsc.mobile.att.net
MMS Proxy proxy.mobile.att.net
MMS Port 80
MCC 310
MNC 410
Authentication Type PAP
APN Type default,mms,supl,hipri
APN Protocol
APN Roaming Protocol
Bearer
MVNO Type

次は、きっと、大丈夫。

なお、手元のMoto G5 plusおよびEssential Phone PH-1ではテザリングができませんでした。ふさがれてた。