#author("2026-04-16T01:30:19+00:00","hhh","hhh")
#author("2026-04-16T03:00:12+00:00","hhh","hhh")
&size(24){&color(olive){''FreeBSD''};};
#topicpath
#contents
#br

- qmailを使ってる自宅サーバーからGmailに転送するには
- https://ameblo.jp/halki/entry-12292187843.html

- SPFレコードの書き方とは?記述例を総まとめ
- https://baremail.jp/blog/2020/02/28/579/

- /usr/local/etc/nsd
         IN      TXT     "v=spf1 +ip4:1.2.3.4"

- SPF Record Testing Tools
- https://www.kitterman.com/spf/validate.html

- DOVECOT The Secure IMAP server
- https://www.dovecot.org/


*** tcpserver [#p316a2b6]

- install
 # cd ports/sysutils/ucspi-tcp
 # cd /usr/ports/sysutils/ucspi-tcp
 # make config
   uncheck IPV6
   check SSL
 # make
 # make install
 # pkg lock 
 # make clean

- update
 # cd ports/sysutils/ucspi-tcp
 # cd /usr/ports/sysutils/ucspi-tcp
 # make showconfig
 # make
 # pkg unlock ucspi-tcp
 # make deinstall
 # make reinstall
 pkg lock ucspi-tcp
 # pkg lock ucspi-tcp
 # make clean


*** qmail-tls [#gbfe6ba6]

- ports/mail/qmailと排他
- /usr/ports/mail/qmailと排他



- ATTENTION
-- Add the following line to your /etc/make.conf
 QMAIL_SLAVEPORT=tls
-- Do not forget to read /var/qmail/doc/TLS.readme.
-- After all, this is NOT our old stock qmail.
-- You can enable qmail as your default mailer executing:
 /var/qmail/scripts/enable-qmail
-- As you need to provide a working certificate in /var/qmail/control/cert.pem :
 # makes a self-signed certificate
 3) do "make certificate"
 # makes a certificate request
 4) do "make certificate-req"

- dehydrated
-- certbotの代替らしい

- install
 # cd ports/mail/qmail-tls
 # cd /usr/ports/mail/qmail-tls
 # make config
   DISBOUNCES_PATCH
   DNS_CNAME
   DOCS
   LOCALTIME_PATCH
   OUTGOINGIP_PATCH
   RCDLINK
   SMTP_AUTH_PATCH
   SPF_PATCH
 # make
 # make install
 # pkg lock netqmail-tls
 # make clean

- update
 # cd ports/mail/qmail-tls
 # make showconfig
 # make
 # pkg unlock netqmail-tls
 # make deinstall
 # make reinstall
 # pkg lock netqmail-tls
 # make clean

*** vpopmail [#e55d3f79]

- install
 # cd /usr/ports/mail/vpopmail
 # make config
   AUTH_LOG
   DOCS
   FILE_LOCKING
   MD5_PASSWORDS
   ROAMING
   SEEKABLE
   SMTP_AUTH_PATCH
   USERS_BIG_DIR
   CDB
 # make
 # make install
 # pkg lock vpopmail
 # make clean

- update 
 # cd /usr/ports/mail/vpopmail
 # make showconfig
 # make
 # pkg unlock vpopmail
 # make deinstall
 # make reinstall 
 # pkg lock vpopmail
 # make clean

- SMTP AUTH vpopmail user not found workaround
 # ls -la /usr/local/vpopmail/bin/vchkpw
 -rwx--x--x  1 vpopmail  vchkpw  110136 Jun  6 09:32 /usr/local/vpopmail/bin/vchkpw
 # chown root:vchkpw /usr/local/vpopmail/bin/vchkpw
 # chmod 4711 /usr/local/vpopmail/bin/vchkpw
 # ls -la /usr/local/vpopmail/bin/vchkpw
 -rws--x--x  1 root  vchkpw  110136 Jun  6 09:32 /usr/local/vpopmail/bin/vchkpw

- /usr/local/etc/rc.d
 # cd /usr/local/etc/rc.d
 # rm qmailsmtpd
 # cp /var/qmail/boot/qmailsmtpd .
-- qmailsmtpd
 : ${qmailsmtpd_fqdn:=`cat /var/qmail/control/me`}
 : ${qmailsmtpd_checkpassword:=/usr/local/vpopmail/bin/vchkpw}
-- qmailsubmission
-- copy qmailsmtpd -> qmailsubmission and replace 'smtp' with 'submission'

- /usr/local/etc/rc.d/qmailpop3d
 !/bin/sh
 
 # PROVIDE: qmailpop3d
 # REQUIRE: LOGIN cleanvar
 # KEYWORD: shutdown
 
 . /etc/rc.subr
 
 name=qmailpop3d
 rcvar=qmailpop3d_enable
 
 load_rc_config $name
 
 : ${qmailpop3d_tcpserver:=/usr/local/bin/tcpserver}
 : ${qmailpop3d_pidfile:=/var/run/qmailpop3d.pid}
 : ${qmailpop3d_enable:=NO}
 : ${qmailpop3d_flags="-R -H"}
 : ${qmailpop3d_host:=0}
 : ${qmailpop3d_port:=pop3}
 : ${qmailpop3d_popup:=/var/qmail/bin/qmail-popup}
 : ${qmailpop3d_fqdn:=`cat /var/qmail/control/me`}
 : ${qmailpop3d_checkpassword:=/usr/local/vpopmail/bin/vchkpw}
 : ${qmailpop3d_pop3d:=/var/qmail/bin/qmail-pop3d}
 
 start_cmd=qmailpop3d_start
 start_precmd=qmailpop3d_precmd
 pidfile=${qmailpop3d_pidfile}
 procname=${qmailpop3d_tcpserver}
 
 qmailpop3d_start()
 {
         echo "Starting qmailpop3d."
 
         $qmailpop3d_tcpserver $qmailpop3d_flags $qmailpop3d_host $qmailpop3d_port \
           $qmailpop3d_popup $qmailpop3d_fqdn $qmailpop3d_checkpassword $qmailpop3d_pop3d Maildir &
         echo $! > $pidfile
 }
 
 qmailpop3d_precmd()
 {
         if ! [ -e "${qmailpop3d_tcpserver}" ]; then
                 echo "sysutils/ucspi-tcp is required" >&2
                 return 1
         fi
 }
 
 run_rc_command "$1"


- 初期設定
 vi /var/qmail/control/me
 cp /usr/local/vpopmail/etc/tcp.smtp /etc
 vadddomain dataz.dyndns.info
 vaddaliasdomain dataz.dyndns.info `cat /var/qmail/control/me`
 /usr/local/vpopmail/bin/vadduser hoge@dataz.dyndns.info
 vi /usr/local/vpopmail/etc/defaultdomain

- 設定をミスしてローカル配送されなくなったら
 qmail[65614]: 1562547200.894274 new msg 5938972
 qmail[65614]: 1562547200.894302 info msg 5938972: bytes 214 from <root@wivicom.co.jp> qp 777 uid 0
 qmail[65614]: 1562547200.895843 starting delivery 39: msg 5938972 to local root@wivicom.co.jp
 qmail[65614]: 1562547200.895879 status: local 1/10 remote 0/20
 qmail[65614]: 1562547200.898999 new msg 5938960
 qmail[65614]: 1562547200.899054 info msg 5938960: bytes 313 from <root@wivicom.co.jp> qp 780 uid 81
 qmail[65614]: 1562547200.900425 starting delivery 40: msg 5938960 to local './Maildir/'@ns.wivicom.co.jp
 qmail[65614]: 1562547200.900462 status: local 2/10 remote 0/20
 qmail[65614]: 1562547200.900524 delivery 39: success: did_0+1+0/qp_780/
 qmail[65614]: 1562547200.900568 status: local 1/10 remote 0/20
 qmail[65614]: 1562547200.900574 end msg 5938972
 qmail[65614]: 1562547200.901813 delivery 40: failure: Sorry,_no_mailbox_here_by_that_name._(#5.1.1)/
- domainsを一時退避してvadddmainしてみる。
- postmasterへのローカル配送を確認したらdomainsをもとにもどす。

*** qmail [#i5028214]


- prerequisite
 portconfig
 gmake
 fakeroot
 ucspi-tcp

- install
 # cd ports/mail/qmail
 # make config
   DISBOUNCES_PATCH
   DNS_CNAME
   DOCS
   LOCALTIME_PATCH
   OUTGOINGIP_PATCH
   RCDLINK
   SMTP_AUTH_PATCH
   SPF_PATCH
 # make
 # make install
 # pkg lock netqmail
 # make clean

- update
 # cd ports/mail/qmail
 # make showconfig
 # make
 # pkg unlock netqmail
 # make deinstall
 # make reinstall
 # pkg lock netqmail
 # make clean


- rc.conf
 qmailsend_enable="YES"
 qmailsmtpd_enable="YES"
 qmailsubmission_enable="YES"
 qmailpop3d_enable="YES"
 sendmail_enable="NO"
 sendmail_submit_enable="NO"
 sendmail_outbound_enable="NO"
 sendmail_msp_queue_enable="NO"

- /etc/mail/mailer.conf
 #sendmail        /usr/libexec/sendmail/sendmail
 #mailq           /usr/libexec/sendmail/sendmail
 #newaliases      /usr/libexec/sendmail/sendmail
 #hoststat        /usr/libexec/sendmail/sendmail
 #purgestat       /usr/libexec/sendmail/sendmail
 sendmail       /var/qmail/bin/sendmail
 mailq          /var/qmail/bin/qmail-qread
 newaliases     /var/qmail/bin/newaliases
 hoststat       /var/qmail/bin/qmail-tcpto
 purgestat      /var/qmail/bin/qmail-tcpok

- OUTGOINGIP_PATCH
 control/outgoingip
 1.2.3.4

- qmail spf patch
- https://www.saout.de/misc/spf/
 /var/qmail/control/spfbehavior
 3: Reject mails when SPF resolves to fail (deny)


*** qmail-dk [#m5914b97]

- DomainKeysとDKIMは違う規格
- DomainKeysは古い

- libdomainkeys

- ports/mail/qmail-dk
 make config
  SMTP_AUTH
 make
 make install
 pkg lock qmail-dk


- create domainkeys
 mkdir -p /usr/local/etc/domainkeys/your_domain_name
 cd /usr/local/etc/domainkeys/your_domain_name
 /usr/local/share/libdomainkeys/dknewkey default 1024 > default.pub
 chown -R qmailq:qmail /usr/local/etc/domainkeys
 chmod 640 /usr/local/etc/domainkeys/your_domain_name/default.pub
 chmod 600 /usr/local/etc/domainkeys/your_domain_name/default
// chown simscan:wheel /usr/local/etc/domainkeys/your_domain_name/default

- usage
-- 方法1 qmailにQMAILQUEUE patcheをあててenv QMAILQUEUEでqmail-dkを指定
-- port/qmailはすでにQMAILQUEUEを参照するようになっているらしい
-- 方法2 qmail-dkをqmail-queueにリネームしてオリジナルを置き換え
 vi /etc/tcp.smtp
 127.:allow,RELAYCLIENT="",QMAILQUEUE="/var/qmail/bin/qmail-dk",DKSIGN="/usr/local/etc/domainkeys/%/default",DKVERIFY="DEGIJKfh"
 :allow,QMAILQUEUE="/var/qmail/bin/qmail-dk",DKSIGN="/usr/local/etc/domainkeys/%/default",DKVERIFY="DEGIJKfh"
 tcprules /etc/tcp/tcp.smtp.cdb /etc/tcp/tcp.smtp.tmp < /etc/tcp/tcp.smtp

- https://freebsd.sing.ne.jp/daily/09/06/01.html

- https://notes.sagredo.eu/en/qmail-notes-185/installing-a-let-s-encrypt-certificate-for-your-qmail-dovecot-and-apache-servers-233.html

*** DKIM [#x2e28af6]
- dkim
- https://sagredo.eu/configuring-dkim-for-qmail-92.html

- DKIM test
- https://www.appmaildev.com/en/dkim

- docker-postfixでDKIM対応送信専用SMTPリレーを立てる
- https://qiita.com/macropygia/items/4007981e3cf56827abfb

*** vpopmail [#e55d3f79]

- install
 # cd ports/mail/vpopmail
 # make config
   AUTH_LOG
   DOCS
   FILE_LOCKING
   MD5_PASSWORDS
   ROAMING
   SEEKABLE
   SMTP_AUTH_PATCH
   USERS_BIG_DIR
   CDB
 # make
 # make install
 # pkg lock vpopmail
 # make clean

- update 
 # cd ports/mail/vpopmail
 # make showconfig
 # make
 # pkg unlock vpopmail
 # make deinstall
 # make reinstall 
 # pkg lock vpopmail
 # make clean

- SMTP AUTH vpopmail user not found workaround
 # ls -la /usr/local/vpopmail/bin/vchkpw
 -rwx--x--x  1 vpopmail  vchkpw  110136 Jun  6 09:32 /usr/local/vpopmail/bin/vchkpw
 # chown root:vchkpw /usr/local/vpopmail/bin/vchkpw
 # chmod 4711 /usr/local/vpopmail/bin/vchkpw
 # ls -la /usr/local/vpopmail/bin/vchkpw
 -rws--x--x  1 root  vchkpw  110136 Jun  6 09:32 /usr/local/vpopmail/bin/vchkpw

- /usr/local/etc/rc.d
 rm qmailsmtpd
 cp /var/qmail/boot/qmailsmtpd .
-- qmailsmtpd
 : ${qmailsmtpd_fqdn:=`cat /var/qmail/control/me`}
 : ${qmailsmtpd_checkpassword:=/usr/local/vpopmail/bin/vchkpw}
-- qmailsubmission
-- copy qmailsmtpd and replace 'smtp' with 'submission'

- /usr/local/etc/rc.d/qmailpop3d
 !/bin/sh
 
 # PROVIDE: qmailpop3d
 # REQUIRE: LOGIN cleanvar
 # KEYWORD: shutdown
 
 . /etc/rc.subr
 
 name=qmailpop3d
 rcvar=qmailpop3d_enable
 
 load_rc_config $name
 
 : ${qmailpop3d_tcpserver:=/usr/local/bin/tcpserver}
 : ${qmailpop3d_pidfile:=/var/run/qmailpop3d.pid}
 : ${qmailpop3d_enable:=NO}
 : ${qmailpop3d_flags="-R -H"}
 : ${qmailpop3d_host:=0}
 : ${qmailpop3d_port:=pop3}
 : ${qmailpop3d_popup:=/var/qmail/bin/qmail-popup}
 : ${qmailpop3d_fqdn:=`cat /var/qmail/control/me`}
 : ${qmailpop3d_checkpassword:=/usr/local/vpopmail/bin/vchkpw}
 : ${qmailpop3d_pop3d:=/var/qmail/bin/qmail-pop3d}
 
 start_cmd=qmailpop3d_start
 start_precmd=qmailpop3d_precmd
 pidfile=${qmailpop3d_pidfile}
 procname=${qmailpop3d_tcpserver}
 
 qmailpop3d_start()
 {
         echo "Starting qmailpop3d."
 
         $qmailpop3d_tcpserver $qmailpop3d_flags $qmailpop3d_host $qmailpop3d_port \
           $qmailpop3d_popup $qmailpop3d_fqdn $qmailpop3d_checkpassword $qmailpop3d_pop3d Maildir &
         echo $! > $pidfile
 }
 
 qmailpop3d_precmd()
 {
         if ! [ -e "${qmailpop3d_tcpserver}" ]; then
                 echo "sysutils/ucspi-tcp is required" >&2
                 return 1
         fi
 }
 
 run_rc_command "$1"


- 初期設定
 vi /var/qmail/control/me
 cp /usr/local/vpopmail/etc/tcp.smtp /etc
 vadddomain dataz.dyndns.info
 vaddaliasdomain dataz.dyndns.info `cat /var/qmail/control/me`
 /usr/local/vpopmail/bin/vadduser hoge@dataz.dyndns.info
 vi /usr/local/vpopmail/etc/defaultdomain

- 設定をミスしてローカル配送されなくなったら
 qmail[65614]: 1562547200.894274 new msg 5938972
 qmail[65614]: 1562547200.894302 info msg 5938972: bytes 214 from <root@wivicom.co.jp> qp 777 uid 0
 qmail[65614]: 1562547200.895843 starting delivery 39: msg 5938972 to local root@wivicom.co.jp
 qmail[65614]: 1562547200.895879 status: local 1/10 remote 0/20
 qmail[65614]: 1562547200.898999 new msg 5938960
 qmail[65614]: 1562547200.899054 info msg 5938960: bytes 313 from <root@wivicom.co.jp> qp 780 uid 81
 qmail[65614]: 1562547200.900425 starting delivery 40: msg 5938960 to local './Maildir/'@ns.wivicom.co.jp
 qmail[65614]: 1562547200.900462 status: local 2/10 remote 0/20
 qmail[65614]: 1562547200.900524 delivery 39: success: did_0+1+0/qp_780/
 qmail[65614]: 1562547200.900568 status: local 1/10 remote 0/20
 qmail[65614]: 1562547200.900574 end msg 5938972
 qmail[65614]: 1562547200.901813 delivery 40: failure: Sorry,_no_mailbox_here_by_that_name._(#5.1.1)/
- domainsを一時退避してvadddmainしてみる。
- postmasterへのローカル配送を確認したらdomainsをもとにもどす。

*** dovecot [#qebe5d22]

- Message from dovecot-2.3.21.1_2:
 You must create the configuration files yourself. Copy them over
 to /usr/local/etc/dovecot and edit them as desired:
 
        cp -R /usr/local/etc/dovecot/example-config/* \
                /usr/local/etc/dovecot
 
 The default configuration includes IMAP and POP3 services, will
 authenticate users agains the system's passwd file, and will use
 the default /var/mail/$USER mbox files.
 
 Next, enable dovecot in /etc/rc.conf:
 
        dovecot_enable="YES"
 
 To avoid a risk of mailbox corruption, do not set the
 security.bsd.see_other_uids or .see_other_gids sysctls to 0
 if Dovecot is storing mail for multiple concurrent users (PR 218392).
 
 Similarly, setting sysctls security.bsd.hardlink_check_uid or
 security.bsd.hardlink_check_gid to 1 might result in non-working
 mailboxes, depending on what mailbox locking mechanism is used
 (PR 242223).
 
 If you want to be able to search within attachments using the
 decode2text plugin, you'll need to install textproc/catdoc, and
 one of graphics/xpdf or graphics/poppler-utils.
 
 There are some potentially breaking changes in Dovecot 2.3. If you
 are upgrading from Dovecot 2.2:
 
   * https://doc.dovecot.org/2.3/installation_guide/upgrading/from-2.2-to-2.3/
   * Merge the configuration file changes from
     /usr/local/etc/dovecot/examples-config/

トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS