●postfix で OP25B対策
# pkg install postfix-sasl # vi main.cf relayhost = [mail.myprovider.jp]:587 smtp_sasl_auth_enable = yes smtp_sasl_password_maps = hash:/usr/local/etc/postfix/smtp_auth_conf smtp_sasl_mechanism_filter = CRAM-MD5 # vi smtp_auth_conf mail.myprovider.jp myid@myprovider.jp:mypass # postmap smtp_auth_conf # /usr/local/etc/rc.d/postfix restart
●ipfw
# vi /boot/loader.conf ipfw_load="YES" ipdivert_load="YES" net.inet.ip.fw.default_to_accept=1 # rebootipfwを有効にして、デフォルトをallowに。
●postfix+dovecot
sendmailで外部送信時にsmtp-authするとかせっかく設定したのだが、
実家おうちさーばがお亡くなりになったので、上記で受信環境を整える。
/etc/passwdにIDが増えるのがうざいので、virtual userで運用したい。
おうちさーばでやろうとしたが、設定のあいだメールが受け取れないので、
VMwareにFreeBSDをいれて実験。
# pkg install postfix # pkg install dovecot2 # cat >> /etc/rc.conf postfix_enable="YES" sendmail_enable="NONE" dovecot_enable="YES" # cat >> /etc/periodic.conf daily_clean_hoststat_enable="NO" daily_status_mail_rejects_enable="NO" daily_status_include_submit_mailq="NO" daily_submit_queuerun="NO" # vi /usr/local/etc/postfix/main.cf # vipw (vmailさんを追加) # vi /etc/group (vmailを追加) # mkdir /var/vmail # chown vmail:vmail /var/vmail # vi virtualmap # postmap virtualmap # vi vmailbox # postmap vmailbox # cd /usr/local/etc/dovecot # vi dovecot.conf # vi conf.d/10-auth.conf # vi conf.d/auth-passwdfile.conf.ext # vi conf.d/10-ssl.conf # vi conf.d/10-master.conf # /usr/local/etc/rc.d/dovecot startこんなもんかな? /var/vmail/DOMAIN/USER/Maildir/ にしてたけど、dovecotとpostfixの
●久々日記
単に作業履歴を残したいだけだけど…
●おうちサーバ終了
実家におきっぱだったおうちサーバが半月ぐらい前にフリーズしていたっぽい。
とりあえず昨日再起動して動いていたので、今のうちにバックアップ、と
思ってスクリプトを実行したら…刺さった。バックアップディスクが逝ってた?
予備機に刺しても起動しようにも、予備機は電源はいらねぇ…つかえねぇ。
しかたがないので内蔵と外付けUSBのディスクをお持ち帰り。
●おうちサーバデータ救出
さて、とりあえず自宅でFreeBSDが動いてる機器は1台しかないので、
自宅版おうちサーバに刺してみる。まずはバックアップのUSBディスクから。
ちなみにSATAの300GB、だいぶ昔にデスクトップをアプライドで買った時に
システムディスクとして刺さってたのを流用していたもの。
ちなみにSDスロットがda0になってるため、da1として認識してます。
# mount /dev/da1s1d /mnt mount: /dev/da1s1d: R/W mount of /backup denied. Filesystem is not clean - run fsck.: Operation not permitted # fsck /dev/da1s1d ** /dev/da1s1d ** Last Mounted on /backup ** Phase 1 - Check Blocks and Sizes PARTIALLY TRUNCATED INODE I=23410690 SALVAGE? [yn] y ** Phase 2 - Check Pathnames ** Phase 3 - Check Connectivity ** Phase 4 - Check Reference Counts ** Phase 5 - Check Cyl groups SUMMARY INFORMATION BAD SALVAGE? [yn] y BLK(S) MISSING IN BIT MAPS SALVAGE? [yn] y 97211 files, 69841777 used, 81522970 free (12650 frags, 10188790 blocks, 0.0% fragmentation) ***** FILE SYSTEM MARKED CLEAN ***** ***** FILE SYSTEM WAS MODIFIED ***** # mount /dev/da1s1d /mnt mount: /dev/da1s1d: Device not configured # mount /dev/da1s1d /mnt #以外とあっさり修復できた。mountが2回いるのはUSBケースがヘボいから。
# ls /mnt/ ls: dump: Device not configured ls: log: Device not configured ls: obj: Device not configured ls: rsync: Device not configured ls: script: Device not configured #とおもったが、ダメだこりゃ。念のためもう一度fsckしてみたが直らない。
続いておうちサーバの本体に刺さってたHDD。IDEだよ懐かしい…
# mkdir /tmp/da2s1{a,d,e,f,g} # mount /dev/da2s1a /tmp/da2s1a # mount /dev/da2s1d /tmp/da2s1d # mount /dev/da2s1e /tmp/da2s1e # mount /dev/da2s1f /tmp/da2s1f # mount /dev/da2s1g /tmp/da2s1g mount: /dev/da2s1g: R/W mount of /export denied. Filesystem is not clean - run fsck.: Operation not permitted #ここがダメで起動してなかったかー。画面見えないままにfsckかけてみたけど、
# fsck /dev/da2s1g ** /dev/da2s1g ** Last Mounted on /export ** Phase 1 - Check Blocks and Sizes UNKNOWN FILE TYPE I=8103136 UNEXPECTED SOFT UPDATE INCONSISTENCY CLEAR? [yn] y ** Phase 2 - Check Pathnames UNALLOCATED I=8103136 OWNER=root MODE=0 SIZE=0 MTIME=Jan 1 09:00 1970 NAME=/ports/misc/termatrix/pkg-descr UNEXPECTED SOFT UPDATE INCONSISTENCY REMOVE? [yn] y ** Phase 3 - Check Connectivity ** Phase 4 - Check Reference Counts ** Phase 5 - Check Cyl groups FREE BLK COUNT(S) WRONG IN SUPERBLK SALVAGE? [yn] y SUMMARY INFORMATION BAD SALVAGE? [yn] y BLK(S) MISSING IN BIT MAPS SALVAGE? [yn] y 825466 files, 18003916 used, 22389220 free (38844 frags, 2793797 blocks, 0.1% fragmentation) ***** FILE SYSTEM STILL DIRTY ***** ***** FILE SYSTEM WAS MODIFIED ***** ***** PLEASE RERUN FSCK ***** # mount /dev/da2s1g /tmp/da2s1g mount: /dev/da2s1g: R/W mount of /export denied. Filesystem is not clean - run fsck.: Operation not permitted # fsck -y /dev/da2s1g ** /dev/da2s1g ** Last Mounted on /export ** Phase 1 - Check Blocks and Sizes ** Phase 2 - Check Pathnames ** Phase 3 - Check Connectivity ** Phase 4 - Check Reference Counts ** Phase 5 - Check Cyl groups 825466 files, 18003916 used, 22389220 free (38844 frags, 2793797 blocks, 0.1% fragmentation) ***** FILE SYSTEM MARKED CLEAN ***** # mount /dev/da2s1g /tmp/da2s1g # find /tmp/da2s1? ※ ひたすらファイル名が表示ふぅ、ひとまずこれで全部データは拾えそうだな。