最近、mail
関数を使ったアプリケーションを触る機会がありました。
アプリケーションでは、メールサーバーの接続情報が見つかりませんでした。
そもそもなのですが、webサーバーから直接メールを送信する事はできるのでしょうか?
メール送信自体はよく実装するのですが、メールサーバーからメールを送信する処理しかした事がなかったためイメージができません。
所感ですが、これができてしまうと送信元を偽ってメールを送信できるのではないかと考えてしまいます。
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
回答5件
0
みなさんメールサーバもってないけどメール送信してますね。
所感ですが、これができてしまうと送信元を偽ってメールを送信できるのではないかと考えてしまいます。
まさにそのとおりですな。
投稿2019/12/16 07:02
総合スコア88038
0
ベストアンサー
SMTPサーバーが自分の管理下にない場合でも、メール送信は可能です。
案1:契約しているプロバイダや、レンタルサーバー会社、GmailなどのSMTPサーバーを使う
多分これが普通。
迷惑メール送信に使われないように、(おそらくサブミッションポートで)自分のアカウントで認証が必要です。
案2:DNSを引いて、送信先のSMTPサーバーに直接送りつける
(foo@bar.example.com宛てであれば、DNSでbar.example.comのMXレコードを引いてそこに送る)
おそらく、迷惑メール扱いされる。
受け取ってくれるSMTPサーバーもあるでしょうけど。
webサーバーから直接メールを送信する事はできるのでしょうか?
が、案2のことであれば、インターネット上ではいろいろ乗り越えないと受け取ってもらえないと思います。
社内システムとかであれば問題ありません。
投稿2019/12/16 07:41
総合スコア85882
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
これができてしまうと送信元を偽ってメールを送信できるのではないかと
mail()でもmb_send_mail()でもそうですが、引数の$additional_headersで任意の送信元(From:)が設定できるので、メールサーバー介していようがいまいが偽ることは可能です。
偽るつもりはなくても、「このメールアドレスは送信専用です。返信されても届きません。」のような但し書きがあるメールを受け取ることってあると思いますが、その手のものはこの$additional_headersに存在しないメールアドレスがFromに設定されている可能性があるかもしれません。
というか大抵はFromに任意のメールアドレスを指定すると思います。
投稿2019/12/16 20:32
総合スコア80875
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/12/21 18:19