@eli:sendmail.cfを直接変更することは、マクロコンパイラによって生成されるため、通常はお勧めしません。
/etc/mail/sendmail.mcを編集して、次の行を含めます。
define(`SMART_HOST',`mailrelay.example.com')dnl
sendmail.mcマクロ構成ファイルを変更した後、sendmail構成ファイルを生成するために再コンパイルする必要があります。
# m4 /etc/mail/sendmail.mc > /etc/sendmail.cf
そして、sendmailサービスを再起動します(Linux):
# /etc/init.d/sendmail restart
スマートホストを設定するだけでなく、名前解決の構成を無効にして、sendmailを非標準ポートにシフトするか、デーモンモードを無効にすることもできます。
名前解決を無効にする
防火ネットワーク内にあるサーバー、またはネットワークアドレス変換(NAT)を使用しているサーバーでは、DNSまたはNISサービスを利用できない場合があります。デフォルトでDNSを使用するため、これはsendmailに問題を引き起こします。DNSが使用できない場合は、mailqに次のようなメッセージが表示されます。
host map: lookup (mydomain.com): deferred)
sendmailが使用できる適切なDNSまたはNISサービスをセットアップする準備ができていない限り、この状況では通常、/ etc/hostsファイルを使用して行われる名前解決を構成します。これは、次のように、「service.switch」ファイルを有効にし、ファイルごとに解決策を指定することによって行われます。
1:sendmailのservice.switchを有効にします/etc/mail/sendmail.mcを編集して、次の行を含めます。
define(`confSERVICE_SWITCH_FILE',`/etc/mail/service.switch')dnl
2:ファイルのservice.switchを構成します。名前解決のために/ etc /hostsのみを参照するように/etc/mail/service.switchを作成または変更します。
# cat /etc/mail/service.switch
hosts files
3:sendmail.mcを再コンパイルし、sendmailを再起動して、この設定を有効にします。
sendmailを非標準ポートにシフトするか、デーモンモードを無効にします
デフォルトでは、sendmailはポート25でリッスンします。さまざまな理由で、このポートを変更するか、sendmailデーモンモードを完全に無効にすることができます。--既知のポートの使用を禁止するセキュリティポリシーがある場合-別のSMTP製品/プロセスの場合標準ポートの同じホストで実行する必要があります-SMTP経由でメールをまったく受け入れたくない場合は、sendmailを使用して送信してください
1:非標準ポートを使用するようにsendmailをシフトします。/etc/mail/sendmail.mcを編集し、次の行の「ポート」設定を変更します。
DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA')
たとえば、sendmailでポート125を使用するには、次のようにします。
DAEMON_OPTIONS(`Port=125,Addr=127.0.0.1, Name=MTA')
これには、sendmail.mcを再コンパイルし、sendmailを再起動する必要があります。
2:または、sendmailデーモンモードを完全に無効にするには(Linux)/ etc / sysconfig / sendmailを編集し、「DAEMON」設定を次のように変更します。
DAEMON=no
この変更では、sendmailを再起動する必要があります。