Knowledgebase / Customer Portal / How to send email from your onion service

How to send email from your onion service

Your onion service includes a mailbox with POP, IMAP and SMTP access and a webmail client. Outbound traffic is blocked by default, so this mailbox is how your site sends mail.

Step 1 — Open the Email tab

Sign in to the Customer Portal, open your onion service and click "Email". The first card shows the mailbox username and password. If you need a different username, open a ticket — the username cannot be changed from the portal.

The Email card shows the mailbox username and password for your onion service

Step 2 — Use the POP, IMAP and SMTP settings

The "POP, IMAP, or SMTP settings" card lists everything an email client needs. All three protocols require SSL:

  • POP — server mail.olh.icu, port 995, SSL required.
  • IMAP — server mail.olh.icu, port 993, SSL required.
  • SMTP — server mail.olh.icu, port 465, SSL required.

Most mail clients detect these values automatically once you enter the mailbox address and password.

The POP, IMAP and SMTP settings card lists the server, port and SSL requirement for each protocol

Step 3 — Read and send mail in the webmail client

On the same card, the webmail sentence carries a SnappyMail link. Open it, type the mailbox address into Email and the password from the card into Passphrase, then click SIGN IN. Tick "Remember Me" only on a machine you control.

The SnappyMail sign-in screen with the Email and Passphrase fields and the SIGN IN button

It is the same mailbox the POP, IMAP and SMTP settings point at, with PGP support in the browser.

If the login is rejected, re-copy the password rather than retyping it — it is a long random string. The mailbox password can only be reset by support.

Step 4 — Send mail from PHP

The recommended library is PHPMailer. Point it at the SMTP server with the mailbox credentials:

use PHPMailer\PHPMailer\PHPMailer;

$mail = new PHPMailer(true);
$mail->isSMTP();
$mail->Host       = 'mail.olh.icu';
$mail->SMTPAuth   = true;
$mail->Username   = 'your-mailbox-username';
$mail->Password   = 'your-mailbox-password';
$mail->SMTPSecure = PHPMailer::ENCRYPTION_SMTPS;
$mail->Port       = 465;
$mail->setFrom('your-mailbox-username', 'Your Site');
$mail->addAddress('[email protected]');
$mail->Subject = 'Hello';
$mail->Body    = 'Message body';
$mail->send();

For WordPress, install the "WP Mail SMTP" plugin, choose "Other SMTP" and enter the same host, port 465, SSL and the mailbox credentials as the SMTP username and password.

Step 5 — Respect the limits and prefer PGP

The mailbox is capped at 50 MB, has a per-mailbox rate limit, and mass email is forbidden — the service is suspended if it is used for it. Prefer PGP where your recipients support it.

The Additional Key Points card shows the PHPMailer example, the WordPress SMTP settings and the mailbox limits

What to do next

Not delivered? Check the mailbox password first, then confirm port 465 with implicit TLS (587 is STARTTLS and is not what the portal shows). If a plugin floods the mailbox, review it — the rate limit is per mailbox.

Related articles

Tags:
  • Onion Service
  • Customer Portal
  • Email

24/7 Expert Support

Our experts are always on hand to help answer your questions, get you started, and grow your presence online. You can email us any time