spamassassinが止まってたら

  • 投稿日:
  • by

spamassassinが止まってるようだ。

Nov 17 14:44:13 fbsd spamc[56121]: connect to spamd on ::1 failed, retrying (#1 of 3): Connection refused
Nov 17 14:44:13 fbsd spamc[56121]: connect to spamd on 127.0.0.1 failed, retrying (#1 of 3): Connection refused
Nov 17 14:44:14 fbsd spamc[56121]: connect to spamd on ::1 failed, retrying (#2 of 3): Connection refused
Nov 17 14:44:14 fbsd spamc[56121]: connect to spamd on 127.0.0.1 failed, retrying (#2 of 3): Connection refused
Nov 17 14:44:15 fbsd spamc[56121]: connect to spamd on ::1 failed, retrying (#3 of 3): Connection refused
Nov 17 14:44:15 fbsd spamc[56121]: connect to spamd on 127.0.0.1 failed, retrying (#3 of 3): Connection refused
Nov 17 14:44:15 fbsd spamc[56121]: connection attempt to spamd aborted after 3 retries

spamd を手動で開始する。

# spamd -c -d

:
:

Nov 17 14:51:37 fbsd spamd[56138]: spamd: connection from ::1 [::1]:50272 to port 783, fd 5
Nov 17 14:51:37 fbsd spamd[56138]: spamd: setuid to makoto-h succeeded

spamdに接続できた。

FreeBSD 13.1-RELEASE kernel更新 (FreeBSD 13.1-RELEASE-p2)

  • 投稿日:
  • by

FreeBSD 13.1に脆弱性発見。

kernel更新をおこなった。

環境は

Rpi 3B
FreeBSD Rpi
Bind + Postfix + Dovecot

で使用している。

Last login: Fri Aug 26 09:25:04 2022 from aopen.smbdom.local
FreeBSD 13.1-RELEASE releng/13.1-n250148-fc952ac2212 GENERIC
Welcome !
makoto@rpi3x:~ % su -
Password:
root@rpi3x:~ # freebsd-version -kur
13.1-RELEASE
13.1-RELEASE
13.1-RELEASE
root@rpi3x:~ # freebsd-update fetch
src component not installed, skipped
freebsd-update: Directory does not exist or is not writable: /var/db/freebsd-update
root@rpi3x:~ # ls -al /var/db/freebsd-update
ls: /var/db/freebsd-update: No such file or directory
root@rpi3x:~ # mkdir -p /var/db/freebsd-update
(ディレクトリが無いと云われたら、作ってください)
root@rpi3x:~ # freebsd-update fetch
src component not installed, skipped
Looking up update.FreeBSD.org mirrors... 2 mirrors found.
Fetching public key from update1.freebsd.org... done.
Fetching metadata signature for 13.1-RELEASE from update1.freebsd.org... done.
Fetching metadata index... done.
Fetching 2 metadata files... done.
Inspecting system... done.
Preparing to download files...
Preparing to download files... done.
Fetching 63 patches.....10....20....30....40....50....60. done.
Applying patches...
The following files will be added as part of updating to
13.1-RELEASE-p2:
/usr/share/zoneinfo/Europe/Kyiv
/usr/share/zoneinfo/GMT
(END)q
he following files will be updated as part of updating to
13.1-RELEASE-p2:
/bin/freebsd-version
/boot/kernel/cam.ko
/boot/kernel/kernel
/boot/kernel/kernel.bin
/boot/kernel/zlib.ko
/boot/loader.efi
/boot/loader_4th.efi
/boot/loader_lua.efi
/boot/loader_simp.efi
/lib/libz.so.6
/rescue/[
/rescue/bectl
/rescue/bunzip2
/rescue/bzcat
/rescue/bzip2
/rescue/camcontrol
/rescue/cat
/rescue/ccdconfig
/rescue/chflags
/rescue/chgrp
/rescue/chio
:q
root@rpi3x:~ # freebsd-update install
src component not installed, skipped
Installing updates...Scanning //usr/share/certs/blacklisted for certificates...
Scanning //usr/share/certs/trusted for certificates...
Scanning //usr/local/share/certs for certificates...
 done.
root@rpi3x:~ #reboot


Last login: Thu Sep  1 12:45:46 2022 from aopen.smbdom.local
FreeBSD 13.1-RELEASE-p2 GENERIC
Welcome !
makoto@rpi3x:~ % su -
Password:
root@rpi3x:~ # freebsd-version -kur
13.1-RELEASE-p2
13.1-RELEASE-p2
13.1-RELEASE-p2
root@rpi3x:~ #

パッチ完了、
"FreeBSD 13.1-RELEASE-p2"となりました。

(2022年9月1日)

さくらVPS(Debian Bullseye)をIPv6対応にする

掲題の作業を実施する。
環境としては

・さくらVPS(石狩)2コア、1GBメモリ
・domain:h-sol.jp
・Debian11 Bullseye
・Bind+Postfix+Dovecot+Apache+MariaDB
・fail2ban導入済

という構成。まずは、ipv6の環境を、さくらvpsのコントロールパネルから、サーバ詳細の画面に遷移する。

control-panel-1.png

次に画面の赤丸のグローバルNWの画面に遷移する。

control-panel-2.pngここで参照するのが、それぞれ赤丸をした項目。

IPv6アドレス
ゲートウェイ
(IPv6)DNS

の3つだ。これを、/etc/network/interfacesにipv6の定義を追記する(赤字部分)

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

source /etc/network/interfaces.d/*

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
allow-hotplug ens3
iface ens3 inet static
address 153.127.50.48/23
gateway 153.127.50.1
# dns-* options are implemented by the resolvconf package, if installed
dns-nameservers 210.188.224.10
dns-search vs.sakura.ne.jp
#
iface ens3 inet6 static
address 2401:2500:204:1123:153:127:50:48
netmask 64
gateway fe80::1
accept_ra 0
autoconf 0
privext 0
dns-nameservers 2401:2500::1

とする。

address : IPv6アドレス
(netmask : プレフィックス長 ->これはどこも64らしい)
gateway : IPv6のルータ
(acccept_ra / autoconf / privext : さくらから固定IPv6が割り振られているので0)
dns-nameservers : さくら(石狩)のリージョンによってネームサーバを指定

という設定
(詳細はman 5 interfaces)
ここで再起動して、IPv6設定を有効化する。

次に各サービスへのIPv6記述の追加。
BindではAAAAの項を追加する。

@ IN AAAA 2401:2500:204:1123:153:127:50:48

Fail2banでは、/etc/fail2ban/action.d/iptables-common.localに赤字部分を追記。

[Init]
blocktype = DROP
protocol = all

[Init?family=inet6]
blocktype = DROP
protocol = all

postfixでは、/etc/postfix/main.cfにて

# inet_protocols = ipv4
  ↓
inet_protocols = all

とする。
Apacheはホスト名ベースのVirtualhostを使っているので、特に変更なし。

なお、クライアント側の話であるが
家鯖からcurlで自鯖のアドレスを取得しているが、

curl -s https://h-sol/cgi-bin/checkip2
 →自宅に割り振られたv6アドレスが返ってくる

curl -4 -s https://h-sol/cgi-bin/checkip2
 →敢えてIPv4でアドレスを取得する

というように変更した。

(2022年6月7日記)

freebsd-update(FreeBSD 13 → 13.1 アップデート)

  • 投稿日:
  • by
  • カテゴリ:

freebsd-update なるコマンドで、FreeBSD 13Rを13.1Rにアップデートした際の作業記録。

環境は、

Rpi3B(hostname="rpi3x.smbdom.local")
SSD500G (USB2)
FreeBSD 13R -> 13.1Rにアップデート
bind+postfix+dovecot+spamassassin+fail2ban のメール鯖構成

といったもの。
ざっくり結論。下記のコマンドを順次出す。

freebsd-update upgrade -r 13.1-RELEASE
reboot
login
su -
/usr/sbin/freebsd-update install
pkg update && pkg upgrade -y
reboot
rm -rf /var/db/freebsd-update/

以下、冗長ではあるが、出力を下記に残す。
入力したところは赤字とする。

root@rpi3x:~ # freebsd-update upgrade -r 13.1-RELEASE
src component not installed, skipped
Looking up update.FreeBSD.org mirrors... 2 mirrors found.
Fetching public key from update1.freebsd.org... done.
Fetching metadata signature for 13.0-RELEASE from update1.freebsd.org... done.
Fetching metadata index... done.
Fetching 2 metadata files... done.
Inspecting system... done.

The following components of FreeBSD seem to be installed:
kernel/generic kernel/generic-dbg world/base world/base-dbg

The following components of FreeBSD do not seem to be installed:

Does this look reasonable (y/n)? y

Fetching metadata signature for 13.1-RELEASE from update1.freebsd.org... done.
Fetching metadata index... done.
Fetching 1 metadata patches. done.
Applying metadata patches... done.
Fetching 1 metadata files... done.
Inspecting system... done.
Fetching files from 13.0-RELEASE for merging... done.
Preparing to download files... done.
Fetching 5422 patches.....10....20....30....40....50....60....70....80....90....100....110....120....130....140....150....160....170....180....190....200....210....220....230....240....250....260....270....280....290....300....310....320....330....340....350....360....370....380....390....400....410....420....430....440....450....460....470....480....490....500....510....520....530....540....550....560....570....580....590....600....610....620....630....640....650....660....670....680....690....700....710....720....730....740....750....760....770....780....790....800....810....820....830....840....850....860....870....880....890....900....910....920....930....940....950....960....970....980....990....1000....1010....1020....1030....1040....1050....1060....1070....1080....1090....1100....1110....1120....1130....1140....1150....1160....1170....1180....1190....1200....1210....1220....1230....1240....1250....1260....1270
(略)
....5280....5290....5300....5310....5320....5330....5340....5350....5360....5370....5380....5390....5400....5410....5420. done.
Applying patches... done.
Fetching 484 files... ....10....20....30....40....50....60....70....80....90....100....110....120....130....140....150....160....170....180....190....200....210....220....230....240....250....260....270....280....290....300....310....320....330....340....350....360....370....380....390....400....410....420....430....440....450....460....470....480.. done.
Attempting to automatically merge changes in files... done.

The following file could not be merged automatically: /etc/ssh/sshd_config
Press Enter to edit this file in vi and resolve the conflicts
manually...

(エンター押すと、エディターの画面が出る
 基本的に昔のままで良さそう)

To install the downloaded upgrades, run "/usr/sbin/freebsd-update install".
Kernel updates have been installed. Please reboot and run
"/usr/sbin/freebsd-update install" again to finish installing updates.
root@rpi3x:~ # reboot

Last login: Thu May 19 15:06:21 2022 from 192.168.0.69
FreeBSD 13.1-RELEASE releng/13.1-n250148-fc952ac2212 GENERIC
Welcome !
makoto@rpi3x:~ % su -
Password:
root@rpi3x:~ # /usr/sbin/freebsd-update install
src component not installed, skipped
Installing updates...
Installing updates...install: ///var/db/etcupdate/current/etc/rc.d/sysctl_lastload: No such file or directory
install: ///var/db/etcupdate/current/etc/rc.d/tlsclntd: No such file or directory
install: ///var/db/etcupdate/current/etc/rc.d/tlsservd: No such file or directory
install: ///var/db/etcupdate/current/etc/rc.d/zfskeys: No such file or directory
root@rpi3x:~ # pkg update && pkg upgrade -y

ここで/etc/ssh/sshd_configと/etc/ttysを別機から取り寄せ。
(たぶん両ファイルが壊れた?)


root@rpi3x:~ # reboot

root@rpi3x:~ # rm -rf /var/db/freebsd-update/

以上

(2022/05/20)

Fail2banでalready banと出たときの対処

fail2ban+iptable(debian)の環境。
fail2banからiptableでDROP済(already banned)なのに、繰り返し攻撃してくる。
相手は変造パケットを投げてきているのであろうか。返事をしてしまっている。

1.png

そこで、下記の iptable コマンド;

iptables -A INPUT -s IPAddress -j DROP

をfail2banとは別に発行すると、しつこい攻撃を撃退できることが分かった。
正当な流儀としては、fail2banのaction.dとかを弄るべきであろう。
しかしながらとりあえず(対症療法で)、シェルスクリプト。

#/bin/sh

if [ -e /tmp/banlist.txt ]; then
# echo "/tmp/reban exist"
true
else
echo "create /tmp/banlist.txt"
touch /tmp/banlist.txt
exit 0
fi

REBAN=`tail /var/log/fail2ban.log|grep -m1 already|awk {'print $7'}`

if [ "${REBAN}" = "" ]; then
# echo "ipaddress is null"
exit 0
else
while read LINE
do
if [ "${LINE}" = "${REBAN}" ]; then
# echo "already banned"
exit 0
else
# echo ${REBAN} >> /tmp/banlist.txt
# `iptables -A INPUT -s ${REBAN} -j DROP`
# echo " ${REBAN} is reBANNED !"
true
fi
done < /tmp/banlist.txt
fi

`iptables -A INPUT -s ${REBAN} -j DROP`
echo ${REBAN} >> /tmp/banlist.txt
echo "${REBAN} is reBANNED !"

exit 0

crontabにて、5分に1回、回している。

2.png

無事撃退できた模様。

→後日談としてiptable-all-portで遮断すれば良さそうだ。

(2022/05/14 記)

----
追記

fail2banのactionに着目した。
デフォルトのTCPで拒否しているところ、UDPやICMPも含む、全プロトコルをDROPさせる、"all"の設定にしてみた。scriptが不要か悩む。

# cat /etc/fail2ban/action.d/iptables-common.local
[Init]
blocktype = DROP
protocol = all
#

しばらくscriptを併用して様子をうかがう。

(2022/05/17)

---
さらに追記

fail2banで"protocol=all"としただけでは撃退できない。
シェルスクリプトが効いて、遮断した様子。

fail2ban_sh.png

本スクリプトでiptableコマンドの送出が必要のようだ。
(iptableのchain INPUTで当該IPアドレスをDROP追加するルール。)

(2022/05/18)


さらに追記

jail.d/*.confの設定で、

banaction = iptables-allports

を追加した。シェルスクリプトを回す必要は無くなった。

sshd.conf

[sshd]
mode = aggressive
enabled = true
backend = %(sshd_backend)s
logpath = %(sshd_log)s
findtime = 600
maxretry = 3
bantime = 2d
banaction = iptables-allports

postfix.conf

[postfix]
mode = aggressive
enabled = true
backend = %(postfix_backend)s
logpath = %(postfix_log)s
findtime = 3600
maxretry = 3
bantime = 2d
banaction = iptables-allports

dovecot.conf

[dovecot]
mode = aggressive
enabled = true
backend = %(dovecot_backend)s
logpath = %(dovecot_log)s
findtime = 600
maxretry = 5
bantime = 2d
banaction = iptables-allports

今回新たに追加のrecidive.conf

[recidive]
enabled = true
bantime = 3mo
findtime = 9d
maxretry = 10
banaction = iptables-allports

すべてのポートで拒否とした。

crontabのエントリからスクリプトを除外した。

(2022/05/27)

ラズパイ4+FreeBSD環境。

wakeonlan のpkgを入れた。
ただ、5回くらいパケット出さないと
Windows10機が反応しないときがある。

そこで、シェルスクリプト。キモはseqコマンドで一連の数字を発出するところ。

$ seq 5
1
2
3
4
5
$

で、作ったスクリプトは以下

#!/bin/sh
for i in `seq 10`
do
wakeonlan -i192.168.0.255 a8:a1:59:2e:88:19
# wakeonlan -i192.168.0.255 60:a4:4c:33:1d:c4
echo ${i}
sleep 2
done
exit 0

ホストのIPアドレスでも良さそうだが、あえてサブネットにブロードキャストしたほうが起動しやすいようだ。

また、bashでforのところをC風に表現するのが普通かもしれない。

#!/bin/bash
for ((i=0 ; i<10 ; i++))
do
:
done

だが、あえて/bin/shを使うためのseqコマンドを展開するのが面白い。

以上、備忘のため。

(2022/05/10)

IPoEを試す

  • 投稿日:
  • by
  • カテゴリ:

IPv6の話

機器を工場設定に戻してIPoEが使えるかテストしたところ、v4-PPPoEを無効にすると、googleくらいしか接続できない。どうも、HGWからNTT網でIPoE動作させるのに必要な、ルータのファームウェアが落ちてきていない模様である。
そこで昨日、ISPのniftyでv6プラスを一回解約した。その後本日、解約手続きができたとメールがあったので、v6プラスの再申し込みをおこなった。すると2時間後くらいに、NTTに連絡が行ったのか、HGWにファームウェアが落ちてきて、ルータがリブートし、IPoEが使えるようになった。

さて、IPoEの速さを1時間ほど堪能した。しかし元の自宅鯖構成に戻そうとしても、IPv4PPPoEがグレーアウトして、しかもIPマスカレードの項目すら現れなくなってしまった。これでは、家庭内の本ApacheサーバーとかPostfixサーバが使えないので、もとのv4-pppoe環境に戻さなくてはならない。

解決方法としては、http://「HGWアドレス」:8888/t にアクセスして、ファームウェアでIPoEを無効化する、今回はその手順の紹介。

なお、もとのIPoEに戻すには、今回の手順の逆を辿ると戻る。

HGWはデフォルトの192.168.1.1から、192.168.0.1に変更してある。

1.HGWのファームウェアのページにアクセス

1.png

2.アイコンを押下してファームウェアに入る。

2.png 使えるポート少ない。これは自宅サーバー使えん!

3.高度な測定に入る。ipv4が有効になっている。「IPv4通信設定」の脇の「設定」を押下する。

3.png

4.IPv4設定を有効→無効にして設定を押下。

4.png5.png

5.192.168.0.1に戻って、IPv4-pppoeが有効になっているのを確認する

6.png

6.最後に念のため再起動してipアドレスを取り直しておく。

以上、備忘のため記す。

(2022/04/30 記)

-------

追記

速度測定結果

IPoE

IPoE.pngPPPoE

pppoe.png

PPPoEのほうが早そうだ。

他のスピード測定サイトでも同様。

(2022/05/21 追記)

前回投稿(radish-play)の記事で続き;

ラジコとか,らじるらじるを録音する「radi.sh」。https://github.com/uru2/radish にある。
前回記事の、radish-play.sh の元になった録音用のシェルスクリプトだ。

music_rajikase.png

今回同様、「らじるらじる」の仕様変更の影響を受けているので、radish-play同様に手直しした。

改変済のスクリプト:radish-20220415.zip
※zip内にライセンスを同梱

変更点のパッチファイル:radi-20220415.patch

(2022/04/15 記)

dovecot-saslが内蔵なのにcyrus-saslを何故installする理由

  • 投稿日:
  • by
  • カテゴリ:

postfixを再導入するところでハマった。

状況としては。FreeBSDのportsから、cyrus-saslを有効にしないでcompileした。

postconf -a
dovecot

と、dovecot-saslが使えるようだ。
しかし/usr/local/etc/postfix/main.cfにて

smtpd_sasl_auth_enable = yes
smtp_sasl_type = dovecot

としても、「cyrus-saslが無い!」と怒られる。


postconfして判った。
暗黙の了解(=main.cfで定義してなくてもデフォルトでセットされているパラメータ)でcyrus-saslがセットされていたのだ。

dovecot-sasl1.pngよって、pkgとしては、「postfix-sasl cyrus-sasl-saslauthd」にdovecotを入れるのが正解。これはdebian(raspi-os含む)も同様。
備忘録に記録していた記事を忘れていた。

注)/usr/local/etc/postfix/main.conf にて、relay_hostにsmtp-authを送る場合には、"smtp_sasl_auth_enable = yes"を追加する。

(2022年3月28日)