• 締切済み

認証なしでメール送信できてしまう

CentOS5.4+sendmail-8.13にてローカル環境でメールサーバーを構築しようとしています。 送受信は問題なくできるのですが、SMTP-Authの設定で認証がなかったり認証に失敗した後でもその後にメールを送信してしまいます。 どのように設定したら認証できなかったユーザーのメールを送信しないようにできるのでしょうか? こちらの環境や設定を書かなければならないのでしょうが、職場のローカル環境で実験しようとしているので、それらの情報は持ち出せません。 (うろ覚えで記載しても間違った情報を記載して解決できなかったら嫌なので…) すみませんが、この少ない情報で回答できれば回答をお願いします。

みんなの回答

  • Wr5
  • ベストアンサー率53% (2177/4070)
回答No.1

「同一ネットワーク内」からの場合、SMTP認証の有無に関わらず送信を許可する場合があるかと思いますが… その辺りの設定とかどうなんでしょう? sendmailは使っていませんので細かいところは判りませんけど。 http://safe-linux.homeip.net/mail/linux-sm12fc2apop-02.html 適当に検索しただけ(記事中はFedora Core2とのことなので…結構古いですな)…ですが、 /etc/mail/accessにローカルネットワークが記述されていれば、そこからのアクセスは無条件に受け入れる…ようですが…。

itaitaitaitaita
質問者

お礼

回答ありがとうございます。 上記のリンクを参照していくつか試してみましたが、同一ネットワーク内でのメール送信はSMTP認証に関係なくされてしまいます。 以下の内容を確認してみました。 ・/etc/mail/access  →記述を全削除してみました。 ・/etc/hosts.allow  →はじめから内容は空でした。 ・/etc/mail/local-host-names  →ドメイン名の記載をコメントアウトしたところ、送信に関しては期待する動作になったものの、受信ができなくなってしまいました。   (自ドメインが存在しないという感じの動作です。) ・/etc/mail/sendmail.mc  →44行目付近の「dnl define('confAUTH_OPTIONS', 'A p')dnl」の頭のdnlをはずし、オプションをAのみにしてみました。 ほかに設定すべきファイルがあるようでしたら、また教えてください。

関連するQ&A

  • Thunderbird3でメールが送信できない。

    Thunderbird3でメールが送信できない。 メッセージを送信できませんでした。 メールの送信前にエラーが発生しました。SMTP サーバ smtp.urban.ne.jp の認証に失敗しました。アカウント設定で認証 (SMTP-AUTH) を使用するように [ユーザ名とパスワードを使用する] が選択されていますが、サーバは認証をサポートしていません。この設定のチェックを外すか、プロバイダに問い合わせてください。 となって、送信ができません>< SMTP-AUTHの設定をはずしているのに、いまだに送信エラーがでます。 これは、どうしてでしょうか? ほかに方法があるのでしょうか? 自分なりに検索してさがしてみましたが、SMTP-AUTHの設定を無効にしたら送信できたとう ことばかりで、設定しても送信できなかったというのは異例のことなのでしょうか? 現在、メールが送信できないで大変に困っております。 まさか、送信できないことになっているとはしらずにバージョンアップしてしまいました

  • qmailで外部にメールが送信できません

    qmail + vpopmail + tcpserverを利用したメールサーバを、 ttp://centos.bungu-do.jp/2007/01/centos_44tcpserverqmailvpopmai.html を参考にして構築しています。 ローカルでのメール送受信、外部ドメインからのメール受信は実現することが出来たのですが、 外部ドメインへのSMTP通信が確立出来ず、メール送信も出来ないと、非常に悩んでおります。 間違っている部分や見るべき設定の箇所、参考になる情報など、 問題解決方法に心当たりある方は、どうかご教示お願いします。 【構成】 CentOS 5.3 qmail-1.03 qmail-date-localtime.patch qmail-glibc.patch qmail-smtpd-auth-0.5.6 vpopmail-5.4.13 ucspi-tcp-0.88 ucspi-tcp-glibc.patch ・maillogを参照すると、認証成功、ログイン、送信開始の後、時間を置いて  delivery 7: deferral: Sorry,_I_wasn't_able_to_establish_an_SMTP_connection._(#4.4.1)/  というエラーを吐いているのが確認できました。  SMTP通信を確立できなかったと言っているのは分かるのですが、  これをどうすれば解消できるか分からないのです。 ・基本的な設定や起動スクリプトは上記のサイトを参考にしました。  UIDやGIDなどは自分の環境に合うよう設定しました。 ・nmapで25がsmtp、587がsubmissionで開いている ・ps auxでqmailの五つのプロセスが起動している ・sendmailが停止している ことは確認しています。 ・DNSに繋がるドメインを設定してあります。 ・DNSのサービスで設定したドメインとFQDNが違い、  現状はFQDNをcontrol/meに設定してあります。  220.83.53.6.dy.bbexcite.jpと言ったFQDNでした。(数字部分は適当) ・認証関係はtelnetやmaillogで照会成功しているのを確認しています。 ・外部の送信テスト相手としては、gmailとhotmail, yahoomailに作った自分のアカウントを利用しています。 ・メールのキューを見ると、そこで止まっていると言う状態に見えます。 適用な羅列で申し訳ありません。 心当たりのある方、どうか回答お願いします。

  • sendmailから他の送信サーバーでSMTP認証を行いメール送信方法

    自宅でメールサーバ(Sendmail)を利用しています。 契約しているプロバイダ(eo net)のOutbound Port25 Blocking実施に伴い、携帯へのメールができなくなりました。 クライアントの設定で、SMTPをプロバイダに設定しSMTP認証を受けることにより送信は可能です。 ただ、.forwardによる自動転送に対応させるために、クライアントではなく、sendmailの設定により根本的な解決を行いたく調べております。 以前、こちらで define(`SMART_HOST', `esmtp:[smtp.nifty.com]')dnl により解決できたとの書き込みは見たのですが、私が利用しているeo netの場合はSMTP認証が必要だと思われます。 そのような設定は可能でしょうか? よろしくお願い申し上げます。

  • メール送信について 「Net::SMTP」or「Basp21」

    メール送信機能部分を作成しているのですがちょっと困ったことが 起きましたので、みなさんのお力を貸していただければと思います。 環境は、本番はFreeBSDなのですが、設定が完了していない為 ウチにありますWinNTでCGI部分だけ動作させています。 その為、本番機ではSendMailが使えるのですが、ウチのサーバーでは 使えないため、Net::SMTPを使って送信しようと思ったのですが・・・。 ウチのメールサーバー(ExchangeServer)でスパムメール対策のため セキュリティを掛けているので、認証されていないとメールが 送信されない設定になっています。 Net::SMTPやBasp21の設定方法が載っているページはたくさんあるのですが 認証用のIDとPWをどこに書き込むのかが書いてあるサイトが見つけられませんでした。 ASP(ActiveServerPages)でBasp21を使った時は、Fromのアドレスの後ろに IDとPWを入れれば、認証されたので同様にしてみたのですが、送信されませんでした。 これだけの情報で回答いただけるかわかりませんが、みなさんにお力を貸して いただければ幸いです。 どうか、宜しくお願いしますm(_ _)m

    • ベストアンサー
    • Perl
  • Becky! でのSMTP-AUTH設定の仕方(送信ができない)

    以前、Yahooにてインターネット接続をして、YahooメールをBecky!で取り込んで使用していました。 転居に伴い、Yahooの回線がとれず、ケーブルテレビの回線を使用することになりました。 メールの環境をそのまま使いたいため、設定しましたが、送信ができません。 まず、ケーブルテレビに問い合わせたところ、 ・サーバーのポート番号 「SMTP」を25→587に変更 ・SMTP認証にチェックをつける 以上のみ指示がありましたので、変更しましたが、送信不可です。 今度は、Yahooに問い合わせましたが、HPによるSMTP-AUTHの設定方法を案内されたのみ(Outlookの設定方法のみ載っている)で、どうしていいかわかりません。 Becky!の使い方を調べたのですが、SMTP認証の方法は各プロバイダなどに問い合わせて下さい、とのこと。 以上の回答を得て、どうしようもなくなっています。 SMTP-AUTHの設定方法など、どうしたら送信ができるようになるのか、どなたか教えてください。 よろしくお願いします。

  • sendmailでホットメールのSMTP送信

    今年からホットメールでのSMTP POP3での送受信が可能になったということで 「eWEB」さんのメールフォームを使用し自宅サーバから送信をしようと思っています。(下記のURLのフォームを使用) http://php.eweb-design.com/1301_mail.html 現在XAMPPで鯖を構築しているのですがホットメールのでSMTPを利用した送信ができません。 C:\xampp\sendmail\sendmail.iniを smtp_server=smtp.live.com smtp_port=587 auth_username=account@hotmail.com auth_password=password C:\xampp\apache\bin\php.iniを SMTP = smtp.live.com smtp_port = 587 のように書き換え「eWEB」さんのフォームを使用したのですが送信ができないようです。 sendmailを利用してホットメールのSMTP送信は何か足りないものがあるのでしょうか? 説明が長くなってしまいましたが、もしお分かりになる方がいましたら宜しくお願いいたします。

    • 締切済み
    • PHP
  • メール送信処理作成について

    下記のページを参考にVCにてメール送信処理を作成しています。 猫でもわかる... http://www.kumei.ne.jp/c_lang/sdk3/sdk_229.htm ただ送信するためには認証が必要なのですね。 OEで受信しないと送信に成功しませんでした。 調べたところ POP before SMTP、SMTP AUTHといった認証方法が あるのはわかったのですが(今回のケースはPOP before SMTP、今後はSMTP AUTHが主流になりそう) メール送信処理を作成するにあたり、認証は どの様に実現すべきなのでしょうか? POP before SMTPに関しては送信前に一回受信すればよいというのはわかります。(それでも処理の関係上、受信メールをサーバーに残す必要があったりと単純に受信するだけではだめなので不明点も多いですが) さらに、今後普及しそうなAUTHに関してはここの過去ログも参考にさせていただきましたが恥ずかしながら???です。 ご存知の方、よろしくお願いいたします。

  • sendmailで別サーバにメールを送信したい

    sendmailで別サーバへメール送信をしたいですが送信できないためわかる方、ご教授ください。 環境:CentOS 5 Sendmail:sendmail-8.13 DNS:bind サーバは3台あり、この環境内でメールを送信したいとおもっております。 構成としては以下となります。 サーバA(SA) 10.100.10.2 サーバB(SB) 192.168.10.2 サーバC(SC) 192.168.10.3 目的:SAからSBへメールを送信したい SB⇔SC間は送受信ができております。 しかし、SA⇒SBの送信ができなくて困っています。 全サーバは、POP等は構築していないため、サーバ上でメールを確認する状態です。 SAのドメイン名は、sendmail.co.jp SBのドメイン名は、centos.co.jp DNSは、SAのみに構築しており nslookup centos.co.jp ============================== Server: 127.0.0.1 Address: 127.0.0.1#53 Name: centos.co.jp Address: 192.168.10.2 ============================== dig centos.co.jp ================================================================================ ;; QUESTION SECTION: ;centos.co.jp. IN A ;; ANSWER SECTION: centos.co.jp. 86400 IN A 192.168.10.2 ;; AUTHORITY SECTION: centos.co.jp. 86400 IN NS ns1.centos.co.jp. ;; ADDITIONAL SECTION: ns1.centos.co.jp. 86400 IN A 127.0.0.1 ;; Query time: 2 msec ;; SERVER: 127.0.0.1#53(127.0.0.1) ================================================================================ SBにはDNSがないため、hostsに記載して名前解決をしております。 SAからの送信の際に気になるのが、 mail test@centos.co.jp に送信しようとすると(SBにはtestアカウントは作成してあります) 送信ログをみるとrelay=test@localhostとDNSをみていないような気がしております・・・ SAは、 resolve.confは、127.0.0.1と設定しています。 ※これが正しいのかもわかりませんが。 nsswitch.confは、host: dns files SBは、 resolve.confは記述なし nsswitch.confは、host: files SAのsendmailは外部送信できるようにはしているつもりです。 m4を使ってcfを編集しており、元々のcentosのsendmailから変更した点は以下です。 ※頭のdnlを外したもの/つけたものも含んでいます。 DAEMON_OPTIONS(`Port=smtp,Addr=10.100.10.2, Name=MTA')dnl dnl FEATURE(`accept_unresolvable_domains')dnl LOCAL_DOMAIN(`centos.co.jp')dnl Cwcentos.co.jp MASQUERADE_AS(`centos.co.jp')dnl FEATURE(masquerade_envelope)dnl FEATURE(masquerade_entire_domain)dnl MASQUERADE_DOMAIN(`.centos.co.jp')dnl FEATURE(`virtusertable',`hash /etc/mail/virtusertable.db')dnl VIRTUSER_DOMAIN_FILE(`/etc/mail/virtuser-domains')dnl SBは受信できるように local-host-namesにsendmail.co.jpに記述し、 念のため、hostsにsendmail.co.jp 10.100.10.2 を記述してます。 pingは相互に飛ばせます。 telnet sendmail.co.jp 25 をするとプロンプトが返ってきません。 そのかわり、telnet 10.100.10.2 25 をするとできますが結果は同じになります。 上記のことから質問ですが、 1.SBについてはDNSがないため、hostsで解決させているがそれで問題ないのか。 2.上記のログからSAはcentos.co.jpに送信しようとしているのでしょうか? 正直、bind、sendmailの設定を初めてやっているので よくわかっていない部分があるため、足らない設定個所や気になるところがあれば 教えて頂けると幸いです。

  • perlでSMPT認証してメールを送信したい。

    こんばんわ。 Perlで一点伺いたいことがございます。 SMTP認証して、メールを送信したいのですが ネット上でサンプルをさがしてきて実際に試したのですが うまくいきません。 どうしたらいでしょうか?以下が実施に動かしているコードです。 #!/perl/perl/bin/perl use strict; use warnings; use CGI::Carp qw(fatalsToBrowser); print"content-type: text/html\r\n\r\n"; print "Hello World!\n"; use Net::SMTP; #SMTPサーバの指定 my $mailhost = 'smtp.gmail.com'; my $mailport = 587; my $mail_username = 'XXX@gmail.com'; my $mail_password = 'パスワード'; my $to_mail = '宛先'; my $from_mail = '送信先'; my $smtp = Net::SMTP->new($mailhost,Port => $mailport); $smtp->auth($mail_username, $mail_password); #メールの送信先 $smtp->mail($from_mail); $smtp->to($to_mail); #メールの内容 $smtp->data(); $smtp->datasend("From: $from_mail\n"); $smtp->datasend("To: $to_mail\n"); $smtp->datasend("Subject: test\n"); $smtp->datasend("\n"); $smtp->datasend("test\n"); #メール内容終わり $smtp->dataend(); #接続を切る。 $smtp->quit; print $smtp; ほぼコピーアンドペーストなのですが、うまくいきません。 とりあえず、newしたオブジェクト $smtpを出力してみると アドレス的なものが表示されます。 Net::SMTP=GLOB(0x7d15ec) ただ、これは認証情報が適当でも出力されるようです。 何度やってもメールは届いていないようなので認証の時点でまちがっているのでしょうか? ただ、認証情報は実際にメールソフトで使っているものなので、間違いないと思うのですが、識者の方よろしくご教授お願いします。

    • ベストアンサー
    • Perl
  • Net::SMTPでメールを送信したいが、サーバーに接続できない

    メールフォームからメールを送信することについて、 FENICSメール(富士通株式会社)でNet::SMTPを使用してメールを送信しようと考えています。 お問い合せでNet::SMTPでメールを送信する場合、smtp authの認証が必要だとわかりまして、下記のサイトを参考にして組みましたが、 メールが送信されませんでした。 http://d.hatena.ne.jp/yoshifumi1975/20060831/1156975960 色々と調べてみた結果、最初の $smtp = Net::SMTP->new('SMTPサーバ', Hello=>"SMTPサーバ"); の文で$smtpに値がなく、サーバーに接続できてませんでした。 参考サイト)http://tech.bayashi.net/pdmemo/sendmailbyperl.html でも、smtp情報はメーラーで問題なく設置できましたので、 サーバー情報、認証には間違いはないと考えられます。 Net::SMTPは使えているのにどうしてsmtpサーバーに接続できないのか わからずにいます。 初歩的で恐縮ですが、ご回答お待ちしております。 よろしくお願いします。