Java でユーザーの電子メール サーバー設定を自動構成するプロジェクトに取り組んでいます。彼の電子メール アドレスからメール サーバーを抽出し、DirContext
クラス withを使用してそのメール サーバーの MX レコードを検索していますcom.sun.jndi.dns.DnsContextFactory
。
Socket
次に、各サーバーを開き、HELO
コマンドを使用してそれらをテストし、応答を確認しています。
私の問題は、セキュリティで保護されていない SMTP ポート 25 でテストした場合にのみ機能することです。セキュリティで保護されたポート 465 で使用するにはどうすればよいですか?
を使用してSecure Socketsを使用してみました
SSLSocketFactory sslsocketfactory = (SSLSocketFactory)SSLSocketFactory.getDefault();
SSLSocket socket = (SSLSocket)sslsocketfactory.createSocket(mailserver, STANDARD_SMTP_PORT);
ただし、次のように、すべての接続でタイムアウト例外が発生します
alt1.gmail-smtp-in.l.google.com. java.net.ConnectException: Operation timed out
助けてください。
詳細情報: 私はメール クライアントを作成していません。これは、既存のメール クライアントのメール サーバー設定を簡素化するためです。