エックスサーバーで作成したメールアカウントでメールを送信しようとするとエラーが出て送信できないトラブルに遭いました。メールを送信しようとすると次のようなエラーが出ます。
直訳すると、クライアントホストが拒否されました。Access denied は IT に従事する人ならよく耳にするアクセス拒否という事です。クライアントホストという事は、この場合は gmail という事です。一体どういう事なのかわかりませんでした。
原因
日本国内でエックスサーバーを利用している人ならまずこの手のエラーに悩まされる事はありません。エックスサーバーはセキュリティ向上の為に「SMTP認証の国外アクセス制限」というものを行っています。スパムや勝手にメールを送信される事のないよう、海外 IP アドレスの端末からのメールを送信するための SMTP サーバーへのアクセスを拒否しています。
では、何故国内にいるのにメールが送信できないのか。
たまにあるんです。日本国内でもグローバル IP アドレスが海外扱いになっている事が。
国内にいるのに海外 IP アドレスになっているのはとても不便で困ります。しかし、グローバル IP アドレスというのはそうそう変えられるものではありません。プロバイダーに連絡でもしない限り。
エラーの回避方法
エックスサーバーのサーバーパネルへログインしてください。
SMTP認証の国外アクセス制限設定を開きます。
該当のドメインを選択します。
OFF にするボタンでアクセス制限を OFF にします。
これでとりあえずはメールを送ることができるようになります。
根本的な解決になっていない
この問題はエックスサーバーに言ってもどうにもなりません。公式サイトではこのように案内されています。
※まれに国内IPアドレスからのアクセスであっても、システム上で国外IPアドレスからのアクセスとして誤認され、メール送信が制限されてしまう場合があります。
その際も、本マニュアルの設定手順に従って、制限を解除してください。
(公式サイトより引用)
プロバイダーに問い合わせるくらいしか手段がありません。