update Обновлено в январе 2026 key Требуется пароль приложения

Настройки iCloud Mail SMTP (2026)

Полное руководство по настройке Apple iCloud Mail SMTP для отправки email из приложений. Узнайте, как создавать пароли для приложений и интегрировать с Python, PHP, Node.js и другими.

iCloud iCloud SMTP — Краткая справка

SMTP сервер smtp.mail.me.com
Порт (STARTTLS) 587 (Рекомендуется)
Порт (SSL/TLS) 465 (Альтернатива)
Имя пользователя Ваш полный email iCloud ([email protected])
Пароль Пароль для приложения (НЕ пароль вашего Apple ID)
Аутентификация LOGIN / PLAIN
Поддерживаемые домены @icloud.com @me.com @mac.com
Apple

Требуется пароль для приложения

Apple требует пароли для приложений для всех сторонних программ. Ваш обычный пароль Apple ID НЕ будет работать для SMTP. Вы должны:

  1. Включена двухфакторная аутентификация для Apple ID (обязательна для всех новых аккаунтов)
  2. Создайте пароль для приложения на appleid.apple.com
  3. Используйте сгенерированный 16-символьный пароль для SMTP аутентификации
warning

Только для личного использования

iCloud Mail предназначен для личной почты, а не для массовых рассылок или маркетинговых кампаний. Отправка больших объёмов может привести к временному ограничению или блокировке аккаунта. Для бизнес-почты рассмотрите SendGrid, Mailgun или Amazon SES.

1 Включить двухфакторную аутентификацию

Двухфакторная аутентификация (2FA) обязательна для паролей приложений. Большинство Apple ID, созданных после 2019 года, имеют 2FA включённой по умолчанию. Чтобы проверить или включить её:

smartphone На iPhone, iPad или Mac:

  1. Перейдите в Настройки > [Ваше имя] > Вход и безопасность
  2. Нажмите Двухфакторная аутентификация
  3. Следуйте инструкциям для включения

language В браузере:

  1. Перейдите в appleid.apple.com
  2. Войдите с вашим Apple ID
  3. Перейдите в Вход и безопасность > Двухфакторная аутентификация

check_circle Если видите 'Two-Factor Authentication: On' в настройках Apple ID, вы готовы создать пароль для приложения.

2 Создать пароль для приложения

1

Перейдите на страницу Apple ID

Войдите с вашим Apple ID:

https://appleid.apple.com/account/manage open_in_new
2

Перейдите в Пароли для приложений

Перейдите в Вход и безопасность > Пароли для приложений

3

Нажмите 'Создать пароль для приложения'

Или нажмите '+' для создания нового пароля.

4

Введите название

Дайте ему описательное имя (например, 'SMTP Client', 'Моё приложение', 'Email сайта').

5

Скопируйте ваш пароль для приложения

Apple покажет 16-символьный пароль в формате:

abcd-efgh-ijkl-mnop

Важно: Скопируйте этот пароль сейчас! Apple покажет его только один раз. Для SMTP можно вводить с дефисами или без.

3 Настройте параметры SMTP

Используйте эти настройки в вашем почтовом клиенте или приложении:

# Настройка iCloud Mail SMTP
SMTP_HOST=smtp.mail.me.com
SMTP_PORT=587        # STARTTLS (рекомендуется)
SMTP_SECURITY=TLS    # или SSL для порта 465
SMTP_USERNAME=[email protected]
SMTP_PASSWORD=abcd-efgh-ijkl-mnop  # Пароль для приложения

code Примеры кода

# Python - Using smtplib (standard library)
import smtplib
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart

# iCloud SMTP Configuration
SMTP_HOST = "smtp.mail.me.com"
SMTP_PORT = 587  # STARTTLS
ICLOUD_EMAIL = "[email protected]"
APP_PASSWORD = "abcd-efgh-ijkl-mnop"  # App-Specific Password

def send_email(to_email, subject, body):
    # Create message
    msg = MIMEMultipart()
    msg['From'] = ICLOUD_EMAIL
    msg['To'] = to_email
    msg['Subject'] = subject
    msg.attach(MIMEText(body, 'plain'))

    # Connect using STARTTLS (port 587)
    with smtplib.SMTP(SMTP_HOST, SMTP_PORT) as server:
        server.starttls()  # Upgrade to TLS
        server.login(ICLOUD_EMAIL, APP_PASSWORD)
        server.send_message(msg)
        print("Email sent successfully!")

# Alternative: Using SSL (port 465)
def send_email_ssl(to_email, subject, body):
    msg = MIMEMultipart()
    msg['From'] = ICLOUD_EMAIL
    msg['To'] = to_email
    msg['Subject'] = subject
    msg.attach(MIMEText(body, 'plain'))

    with smtplib.SMTP_SSL(SMTP_HOST, 465) as server:
        server.login(ICLOUD_EMAIL, APP_PASSWORD)
        server.send_message(msg)

# Usage
send_email(
    "[email protected]",
    "Hello from iCloud!",
    "This email was sent via iCloud Mail SMTP."
)
// PHP - Using PHPMailer
// Install: composer require phpmailer/phpmailer

use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\SMTP;
use PHPMailer\PHPMailer\Exception;

require 'vendor/autoload.php';

$mail = new PHPMailer(true);

try {
    // Server settings
    $mail->isSMTP();
    $mail->Host       = 'smtp.mail.me.com';
    $mail->SMTPAuth   = true;
    $mail->Username   = '[email protected]';
    $mail->Password   = 'abcd-efgh-ijkl-mnop';  // App-Specific Password
    $mail->SMTPSecure = PHPMailer::ENCRYPTION_STARTTLS;
    $mail->Port       = 587;

    // For SSL (port 465) use:
    // $mail->SMTPSecure = PHPMailer::ENCRYPTION_SMTPS;
    // $mail->Port       = 465;

    // Recipients
    $mail->setFrom('[email protected]', 'Your Name');
    $mail->addAddress('[email protected]');

    // Content
    $mail->isHTML(true);
    $mail->Subject = 'Hello from iCloud!';
    $mail->Body    = 'This is a <b>test email</b> sent via iCloud SMTP.';
    $mail->AltBody = 'This is a test email sent via iCloud SMTP.';

    $mail->send();
    echo 'Email sent successfully!';
} catch (Exception $e) {
    echo "Failed to send: {$mail->ErrorInfo}";
}
// Node.js - Using Nodemailer
// Install: npm install nodemailer

const nodemailer = require('nodemailer');

// Create transporter with iCloud SMTP
const transporter = nodemailer.createTransport({
    host: 'smtp.mail.me.com',
    port: 587,
    secure: false, // Use STARTTLS
    auth: {
        user: '[email protected]',
        pass: 'abcd-efgh-ijkl-mnop' // App-Specific Password
    },
    tls: {
        ciphers: 'SSLv3'
    }
});

// For SSL (port 465) use:
// const transporter = nodemailer.createTransport({
//     host: 'smtp.mail.me.com',
//     port: 465,
//     secure: true,
//     auth: { user: '...', pass: '...' }
// });

// Send email
async function sendEmail() {
    try {
        const info = await transporter.sendMail({
            from: '"Your Name" <[email protected]>',
            to: '[email protected]',
            subject: 'Hello from iCloud!',
            text: 'This email was sent via iCloud SMTP.',
            html: '<p>This email was sent via <b>iCloud SMTP</b>.</p>'
        });

        console.log('Email sent:', info.messageId);
    } catch (error) {
        console.error('Error sending email:', error);
    }
}

sendEmail();
# Ruby - Using Mail gem
# Install: gem install mail

require 'mail'

# Configure iCloud SMTP
Mail.defaults do
  delivery_method :smtp, {
    address:              'smtp.mail.me.com',
    port:                 587,
    user_name:            '[email protected]',
    password:             'abcd-efgh-ijkl-mnop',  # App-Specific Password
    authentication:       :login,
    enable_starttls_auto: true
  }
end

# Create and send email
mail = Mail.new do
  from     '[email protected]'
  to       '[email protected]'
  subject  'Hello from iCloud!'
  body     'This email was sent via iCloud Mail SMTP.'
end

mail.deliver!
puts "Email sent successfully!"
// Swift - Using SwiftSMTP
// Add to Package.swift: .package(url: "https://github.com/Kitura/Swift-SMTP")

import SwiftSMTP

// Configure iCloud SMTP
let smtp = SMTP(
    hostname: "smtp.mail.me.com",
    email: "[email protected]",
    password: "abcd-efgh-ijkl-mnop",  // App-Specific Password
    port: 587,
    tlsMode: .requireSTARTTLS,
    tlsConfiguration: nil
)

// Create email
let from = Mail.User(
    name: "Your Name",
    email: "[email protected]"
)
let to = Mail.User(
    name: "Recipient",
    email: "[email protected]"
)

let mail = Mail(
    from: from,
    to: [to],
    subject: "Hello from iCloud!",
    text: "This email was sent via iCloud SMTP using Swift."
)

// Send email
smtp.send(mail) { error in
    if let error = error {
        print("Error: \(error)")
    } else {
        print("Email sent successfully!")
    }
}

alternate_email Email-алиасы iCloud

Вы можете отправлять письма с любого из ваших iCloud email алиасов. Все эти домены работают с одними настройками SMTP:

@icloud.com

Стандартная почта iCloud

@me.com

Устаревший MobileMe

@mac.com

Устаревший .Mac

info Вы можете создать до 3 email алиасов в настройках iCloud Mail. Все алиасы используют один ящик и могут использоваться для SMTP.

speed Лимиты отправки iCloud Mail

Тип лимита Значение
Сообщений в день 1,000
Получателей на сообщение 500
Максимальный размер сообщения 20 MB
Размер вложения 20 MB (или используйте Mail Drop для файлов до 5 ГБ)
Псевдонимы email 3

build Решение проблем

error 535 Authentication failed
expand_more

Это самая частая ошибка с iCloud SMTP.

Решения:

  • check_circle Используйте пароль для приложения: Ваш обычный пароль Apple ID НЕ будет работать. Создайте пароль для приложения на appleid.apple.com
  • check_circle Убедитесь, что 2FA включена для Apple ID
  • check_circle Используйте полный iCloud email как логин (не только часть до @)
  • check_circle Если ваш пароль содержит дефисы (abcd-efgh-ijkl-mnop), попробуйте с ними или без
error Таймаут / Отказ соединения
expand_more

Не удаётся подключиться к SMTP серверу Apple.

Решения:

  • check_circle Проверьте, не блокирует ли файрвол/провайдер порты 587 или 465
  • check_circle Попробуйте переключиться между портами 587 (STARTTLS) и 465 (SSL)
  • check_circle Убедитесь, что имя хоста точно smtp.mail.me.com
  • check_circle Проверьте статус сервисов Apple: apple.com/support/systemstatus
error 550 5.1.0 Sender denied
expand_more

Адрес 'От' не совпадает с вашим iCloud аккаунтом.

Решения:

  • check_circle Используйте iCloud email или верифицированный алиас как адрес 'От'
  • check_circle Адрес 'От' должен совпадать с аккаунтом аутентификации
warning Не удаётся создать пароль для приложения
expand_more

Опция паролей для приложений недоступна.

Решения:

  • check_circle Сначала включите двухфакторную аутентификацию — Пароли для приложений требуют активной 2FA
  • check_circle Выйдите и войдите снова на appleid.apple.com
  • check_circle Попробуйте Safari (некоторые функции лучше работают в Safari)
  • check_circle Убедитесь, что ваш Apple ID в хорошем состоянии (нет неоплаченных счетов)

quiz Часто задаваемые вопросы

Почему нельзя использовать пароль Apple ID для SMTP? expand_more

Apple требует пароли для приложений для всех сторонних приложений в целях безопасности. Если пароль скомпрометирован, ваш Apple ID останется защищённым. Вы можете отозвать отдельные пароли, не затрагивая Apple ID или другие приложения.

Сколько паролей для приложений можно создать? expand_more

У вас может быть до 25 активных паролей для приложений одновременно. Если нужно больше, отзовите старые неиспользуемые пароли. Рекомендуется создавать отдельный пароль для каждого приложения, чтобы отзывать доступ у одного, не затрагивая остальные.

Можно ли отправлять с адресов @me.com или @mac.com? expand_more

Да! Если у вас есть устаревшие адреса @me.com (из MobileMe) или @mac.com (из .Mac), связанные с вашим Apple ID, вы можете использовать их с теми же настройками SMTP. Они считаются алиасами вашего аккаунта iCloud. SMTP сервер (smtp.mail.me.com), порт и пароль для приложения остаются теми же — просто измените адрес отправителя (From) на нужный алиас.

Поддерживает ли iCloud отправку с собственного домена? expand_more

С iCloud+ Apple теперь поддерживает собственные почтовые домены. Вы можете добавить свой домен в iCloud Mail и использовать его для отправки. Однако для бизнеса или больших объёмов почты лучше подходят специализированные сервисы вроде SendGrid, Mailgun или Amazon SES — они предлагают лучшую доставляемость, аналитику и более высокие лимиты отправки.

Какой порт использовать: 587 или 465? expand_more

Оба порта работают с iCloud Mail:

  • Порт 587 (STARTTLS): Рекомендуется. Начинает без шифрования, затем переходит на TLS. Шире поддерживается библиотеками и файрволами.
  • Порт 465 (SSL/TLS): Альтернативный. Соединение шифруется с самого начала. Используйте, если порт 587 заблокирован.

Нужны большие лимиты отправки?

iCloud Mail отлично подходит для личного использования, но для бизнес-рассылок вам понадобится специализированный email сервис с более высокими лимитами и лучшим отслеживанием доставляемости.