Skip to content

Instantly share code, notes, and snippets.

@monmonja
Created November 17, 2020 03:19
Show Gist options
  • Save monmonja/6cc535757c6f0e2c188612d75f2c0dea to your computer and use it in GitHub Desktop.
Save monmonja/6cc535757c6f0e2c188612d75f2c0dea to your computer and use it in GitHub Desktop.
ses amazon php smtp test
$login = 'username';
$pass = 'password';
$ctx = stream_context_create();
stream_context_set_option($ctx, 'ssl', 'verify_peer', false);
stream_context_set_option($ctx, 'ssl', 'verify_peer_name', false);
$socket = stream_socket_client('tcp://email-smtp.ap-southeast-2.amazonaws.com:25', $err, $errstr, 60, STREAM_CLIENT_CONNECT, $ctx);
try {
if (!$socket) {
print "Failed to connect $err $errstr\n";
return;
}else{
echo fread($socket,8192);
echo fwrite($socket, "EHLO email-smtp.ap-southeast-2.amazonaws.com\r\n");
echo fread($socket,8192);
echo fwrite($socket, "STARTTLS\r\n");
echo fread($socket,8192);
echo stream_socket_enable_crypto($socket, true, STREAM_CRYPTO_METHOD_SSLv23_CLIENT);
echo fwrite($socket, "EHLO cool.xx\r\n");
echo fread($socket,8192);
echo fwrite($socket, "AUTH LOGIN\r\n");
echo fread($socket,8192);
echo fwrite($socket, base64_encode($login)."\r\n");
echo fread($socket,8192);
echo fwrite($socket, base64_encode($pass)."\r\n");
echo fread($socket,8192);
echo fwrite($socket, "MAIL FROM: <hello@example.com>\r\n");
echo fread($socket,8192);
echo fwrite($socket, "RCPT TO: <success@simulator.amazonses.com>\r\n");
echo fread($socket,8192);
echo fwrite($socket, "DATA\n");
echo fread($socket,8192);
echo fwrite($socket, "Subject: Test from php\r\n");
echo fread($socket,8192);
echo fwrite($socket, "Test from php.\r\n.\r\n");
echo fread($socket,8192);
echo fwrite($socket, "QUITy \n");
echo fread($socket,8192);
fclose($socket);
}
}catch(Exception $e){
echo $e;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment