fail2banで全JAILのステータスを確認したい


Linuxサーバでfail2banを使ってアクセス拒否設定を行っている。

JAILを複数している場合に、全部を一括で確認する手段が標準ではない模様。
調べたところ「kamermans/fail2ban-allstatus.sh」の下記コメントを発見

joergludwig commented on 20 Dec 2017
Shorter version:
fail2ban-client status | sed -n ‘s/,//g;s/.*Jail list://p’ | xargs -n1 fail2ban-client status

これを ~/.bashrc に対して下記のように追加し、「fail2ban-check」で確認出来るように設定した。

alias fail2ban-check="fail2ban-client status | sed -n 's/,//g;s/.*Jail list://p' | xargs -n1 fail2ban-client status"

ZentyalというExchange互換をうたうUbuntuベースのメール/グループウェアアプライアンス


2019/07/02追記:「Zentyalを日本語で使う場合の設定手順」という別記事もあります。

なお、Exchangeサーバ互換としては、OpenChangeは死んだプロダクト(ドメインも関係無い業者にとられている)で、2021年6月時点でも使えるものは SOGo になります。


以前、UbuntuをWeb GUIで管理するツールとしてZentyalというものを見つけたが、結局使わなかった。
現状、どんな感じになっているかを確認してみたところ、Web GUIメインというよりは、メールアプライアンスの管理画面として元気に動いていた。

商用版サイト:http://www.zentyal.com/
非商用版サイト:http://www.zentyal.org/
github:https://github.com/Zentyal/zentyal

Zentyal 5.0が2016/11にリリースされている。

ベースOSはUbuntu 16.04で、そこにOpenChange®, SOGo, Samba4, Heimdal Kerberos®, Dovecot, Postfix, Postgrey, Sieve, Fetchmail, Amavis, SpamAssasin, ClamAV, Apache, CUPS, Netfilter, BIND9, ISC DHCP, NTPd, OpenSSL, OpenVPNを載せてアプライアンスとしている。

興味深いのは「OpenChange
Microsoft Exchange Server互換をうたっており、メールやスケジュール管理のグループウェア的な利用方法もサポートしているらしい。
OutlookからExchange Serverとして使えるようだ。
いままでも、そういう製品はいくつかあったが、大抵商用ライセンスのみで、非商用版でも使えそうなのは見かけなかった。

Zentyalの場合、商用版と非商用版で何が違うのか?
DIFFERENCES BETWEEN ZENTYAL EDITIONS
どちらも「All the latest features.」とあり、機能差はないようだ。
非商用版は、常に最新パッケージを使うので、安定版にとどめておく、ということができない、という違いがあるようだ
まぁ、小規模で使うんだったら、まぁ、関係無い感じですね

Zentyalを使うには以下の4つのパターンがあるようだ
・Zentyal Cloudを契約し、Zentyalが提供する基盤を借りる
・Zentyal Serverを購入し、指定されたISOイメージを使ってインストールを行い、運用する
・Zentyal Development editionのISOイメージを使ってインストールを行い、運用する
・UbuntuにZentyal Development editionのレポジトリを追加し、インストールを行い、運用する

とりあえず試してみるのであれば「Zentyal Development editionのISOインストール」か「UbuntuにZentyal追加」になる。

公式Wiki」の更新状況が微妙なのだが、
いろいろ探すと「5.0対応のInstallation Guide」が出てくる。
この手順にしたがうと、素のUbuntu 16.04に対して、レポジトリを追加することでzentyalがセットアップできるようになるらしい。

この手順でインストールしたものは「DEVELOPMENT EDITION」という扱いで、zentyal.orgで入手できるバージョン扱いになる。
なお、development editionから商用版へのアップデートはできない、とのこと。

で・・・本来であれば導入に関する記事を書くはずだったのですが
いまだのConoHaでUbuntu 16.04 64bit環境がデプロイできないという件が解決していないので、続きがかけていません。

いつになったら解決するかなぁ・・・

2016/12/09 「ConohaでUbuntu16.04 64bitを構築すると高確率で設定したパスワードが利用できない

2016/12/16 「ConoHaでUbuntu 16.04 64bitを指定したパスワードでデプロイできない件は未解決のままもうすぐ10日経過

結局、1ヶ月以上経ってからバグで修正終わりました、という報告があっただけで、使えなかったことと検証したことに対するConoHaからの謝罪はありませんでした。あと、こちらから指摘しなければ利用料金を全額支払わせるつもりでしたね。

qmailの情報収集 2016/03/31


新しい情報があったので「qmailの情報収集 2019/08/26」で更新しました。


2012年に作成した「いまさらqmailのパッチ情報収集 2012/02/17」という記事に、いまでも時々アクセスがある。

あれから4年。何か変わったところがあるか調べてみた。

・新星 s/qmail登場
なんと「s/qmail」という新作が登場。

これまで普通のqmail向けに、SMTP Authentication, Spamcontrol(4年前の記事でも紹介)などを作成してきた開発者が提供するqmail 2016年版、的なもの。
IPv4,IPv6にちゃんと対応し、vpopmailなどのqmailを使用するソフトウェアがそのまま使用できるものとなっている。

SSL/TLS対応はs/qmail自身ではなく「ucspi-ssl」が提供しているようだ。
SPF,DKIMには対応していない。

・IndiMail
qmail, serialmail, qmailanalog, dotforward, fastforward, mess822, daemontools, ucspi-tcp, Courier IMAP/POP3, Bogofilter – A Bayesian Spam Filter, Fetchmailをまとめてパッケージングしている「www.indimail.org」にアーキテクチャ図あり
SPF,DKIM対応
各ディストリビューション用のレポジトリーが用意されている。(RHEL/CentOS5~7,Debian7~8,Ubuntu12.04~15.10,OpenSuSE11.4など)
安定版:http://download.opensuse.org/repositories/home:/indimail/
開発版:http://download.opensuse.org/repositories/home:/mbhangui/

基本的にパッケージとして使うためものであるため、qmail単独で使うにはちょっと厳しい感じがある。
vpopmailと組み合わせて使えるか、というと、結構謎。

qmail-isp
qmail-1.03に対するパッチをまとめたもの。netqmail-1.06相当のパッチも含まれている。
2013年6月に更新版が出ていた。
こいつはvpopmailと一緒に使えるらしい

Courier-IMAPからdovecotへの移行



Courier-IMAPの最近のバージョンが使っているcourier-authlibは、vpopmail連携機能が切られてしまい使えなくなってしまっているため代替策を検討中。

まず、dovecotに乗り換え実験中。

Dovecotのwikiを探すと「AuthDatabase/VPopMail」というページを発見。
vpopmail専用のデータベースファイルを使っている場合は、「–with-vpopmail」でコンパイル。
vpopmailからmysqlを使っている場合は、「–with-sql –with-mysql」でコンパイルということが分かる。

次に、設定。

うちの環境では、単純なvpopmailではなく、ユーザ管理にmysqlを利用している。
このため、vpopmail由来のmysqlを使う場合に重要なポイントのみを記載する。

・「/etc/dovecot/dovecot-sql.conf.ext」

password_query = SELECT CONCAT( pw_name,'@', pw_domain ) AS user,\
        pw_passwd AS password \
        FROM vpopmail  \
        where pw_name='%n' AND pw_domain='%d' ;
user_query = SELECT pw_dir as home, \
        <vpopmailのUID> AS uid, <vchkpwのGID> AS gid \
        FROM vpopmail \
        WHERE pw_name = '%n' AND pw_domain = '%d'

なお、動作確認時はmysqlを起動して「SELECT CONCAT( pw_name,’@’, pw_domain ) AS user, pw_passwd AS password FROM vpopmail where pw_name=’ユーザ名’ AND pw_domain=’ドメイン名’ ;」という感じで実行して、以下の様な感じで表示されればok。

# mysql -u root --password=パスワード
mysql> use vpopmail;
Database changed
mysql> SELECT CONCAT( pw_name,'@', pw_domain ) AS user, pw_passwd AS password FROM vpopmail where pw_name='ユーザ名' AND pw_domain='ドメイン名';
+---------------------+------------------------------------+
| user                | password                           |
+---------------------+------------------------------------+
| ユーザ名@ドメイン名   | 文字列~                           |
+---------------------+------------------------------------+
1 row in set (0.00 sec)

mysql> quit
Bye
#

・「/etc/dovecot/conf.d/10-auth.conf」と「/etc/dovecot/conf.d/auth-sql.conf.ext」
上記で作成したsql設定ファイルをここで指定
10-auth.confでは、下記の「sql」に関するところだけを修正。(vpopmailはいじらない)

!include auth-sql.conf.ext

auth-sql.conf.extでは、dovecot-sql.conf.extのパスがきちんと指定されていることを確認。

・「/etc/dovecot/conf.d/10-mail.conf」
Maildirを操作する際のユーザ権限のチェックをしている項目の設定を変更する。
今回は元々vpopmailの1アカウントのみで全ユーザを動かしていたため、UIDを1つだけ指定している形になる。

first_valid_uid=<vpopmailのUID>
last_valid_uid=<vpopmailのUID>
first_valid_gid=<vchkpwのGID>
last_valid_gid=<vchkpwのGID>

なお、この設定をしていないと、POP3などでログインしてみると、/var/log/maillogに以下のようなエラーが出力される。

Feb 25 15:21:46 サーバ名 dovecot: pop3: Error: user ユーザ名@ドメイン名: Mail access for users with UID <vpopmailのUID> not permitted (see first_valid_uid in config file, uid from userdb lookup).
Feb 25 15:21:46 サーバ名 dovecot: pop3: Error: Invalid user settings. Refer to server log for more information.

・POP3の未読管理の移行
標準設定だとPOP3のUIDLコマンドの出力結果が全然違うので、メーラ側の未読管理がリセットされる。
dovecot公式wikiに「Migration」という項目がある。

「/etc/dovecot/conf.d/20-pop3.conf」内の「pop3_uidl_format」を定義することで対処できる、とあるが、20-pop3.conf内に記載されている「Courier: %f or %v-%u (both might be used simultaneosly)」を設定してみると、「%f」と「%v-%u」は、Courier-IMAPでの結果と異なるものになる。

よく見てみると、「Migration/Courier v0.43 and later to Dovecot v1.1+」と専用の項目がある。
「courier-dovecot-migrate.pl」を使って、各Maildir内にある「courierimapuiddb」などをdovecot用の「dovecot-uidlist」にコンバートする、というもの。
コレを実行することで、同じUIDLの結果が得られるようになった。

・「/etc/dovecot/conf.d/15-mailboxes.conf」
IMAP用メールボックスの標準名調整。
いままで下書きフォルダ名「Draft」、スパムメール用「Spam」と設定していた。
dovecotの標準設定では「Drafts」、「Junk」であるため、読み替え設定を入れる

  mailbox Draft {
    special_use = \Drafts
  }
  mailbox Spam {
    special_use = \Junk
  }
  mailbox Trash {
    special_use = \Trash
  }

・・・・・・・

で、ここまでやって気がついたこと。
Courier-IMAPでも、vpopmail関係無く、直接MySQLを見れば良かったんじゃね?ということ。

まぁ、2つのバージョンの並行動作が難しいので、動作確認がしにくく、やりたくはないですがね。

RoundCubeは次の1.1でIE8とFirefox 3.6のサポートを切る



Webmailソフトの「RoundCube」に、version 1.0.1が出ていたのに気がついて、アップデート。

ついでに、「System Requirements」を確認・・・

Internet Explorer 6 (Windows 2000/XP) – not supported since Roundcube 1.1
Internet Explorer 7 (Windows XP) – requires legacy_browser plugin since Roundcube 1.1
Internet Explorer 8 (Windows XP/7) – requires legacy_browser plugin since Roundcube 1.1
Firefox 3.6 (Windows XP, Linux) – requires legacy_browser plugin since Roundcube 1.1

おや?
次のバージョン 1.1から、古いブラウザのサポートをやめるようです。

RoundCube 1.1から、内部で使用しているjQueryのバージョンを2.xに変更するようで、そのjQuery 2.xがこれらのブラウザをサポートしていない(jQuery 2.0 Releasedより)ということに起因する変更点である模様です。

とりあえずは、legacy_browser pluginを使うという、救済処置がIE6以外にはあるようです。