qmail への接続は tcpserver プログラムを使って待ち受けます。
tcpserver プログラムは ucspi-tcp パッケージに含まれており、サーバーの接続要求を待ちうけてそれを指定されたアプリケーションに渡すプログラムです。
メール送信接続のルール
tcpserver の機能のひとつであるアプリケーションへの接続を制限するためのルールを作成します。
メールを送信するときの接続に対するルールデータベースファイル /etc/tcp.smtp を作成します。
# vi /etc/tcp.smtp
/etc/tcp.smtp
127.0.0.:allow,RELAYCLIENT=””
192.168.0.:allow,RELAYCLIENT=””
192.168.0.:allow,RELAYCLIENT=””
このルールはローカルホストと 192.168.0.0 ネットワーク上のクライアントからの接続を許可し、環境変数 RELAYCLIENT の値に空の文字列を設定することを意味します。
環境変数 RELAYCLIENT に値を設定すると制御ファイル rcpthosts の内容を無効にすることになります。
作成したルールデータベースファイルを tcprules プログラムを使用をして tcpserver が使用できる cdb データベースファイルへと変換します。
# /usr/local/bin/tcprules /etc/tcp.smtp.cdb /etc/tcp.smtp.tmp < /etc/tcp.smtp
メール受信接続のルール
メールを受信するときの接続に対するルールデータベースファイル /etc/tcp.pop3 を作成します。
# vi /etc/tcp.pop3
/etc/tcp.pop3
:allow,ALLOWPLAIN="",DOMAINOWNER=""
このルールはすべての接続を許可し、環境変数 DOMAINOWNER の値に空の文字列を設定(qmail-vida のログイン ID ベースのバーチャルドメイン機能を利用する場合に必要)することを意味します。
受信接続のルールデータベースファイルも同じく cdb データベースファイルへと変換します。
# /usr/local/bin/tcprules /etc/tcp.pop3.cdb /etc/tcp.pop3.tmp < /etc/tcp.pop3