Initial commit: local_machine docs and scripts
This commit is contained in:
274
docs/firemail/COCKLI_THUNDERBIRD_SETUP.md
Normal file
274
docs/firemail/COCKLI_THUNDERBIRD_SETUP.md
Normal file
@@ -0,0 +1,274 @@
|
||||
# Cock.li + Thunderbird: гайд при проблемном коннекте
|
||||
|
||||
Проверено: с прокси (149.154.64.19) и с DO (hunab-prod) до mail.cock.li открыт только **IMAP 993**. SMTP 465/587 — таймаут. Ниже — как выстроить сетап, чтобы легко отправлять и получать письма из Thunderbird.
|
||||
|
||||
---
|
||||
|
||||
## Оглавление
|
||||
|
||||
1. [Проверенные настройки cock.li](#проверенные-настройки-cockli)
|
||||
2. [Проверка доступа с серверов](#проверка-доступа-с-серверов)
|
||||
3. [Приём писем (IMAP) через туннель](#приём-писем-imap-через-туннель)
|
||||
4. [Отправка (SMTP) — варианты](#отправка-smtp--варианты)
|
||||
5. [Настройки в Thunderbird](#настройки-в-thunderbird)
|
||||
6. [Команды для копирования](#команды-для-копирования)
|
||||
|
||||
---
|
||||
|
||||
## Проверенные настройки cock.li
|
||||
|
||||
**Сервер:** `mail.cock.li` (для прокси без DNS использовать IP: `37.120.193.124`).
|
||||
|
||||
### SMTP (отправка)
|
||||
|
||||
| Параметр | Значение |
|
||||
|-----------------|----------|
|
||||
| Сервер | `mail.cock.li` |
|
||||
| Порт SSL | **465** (SSL/TLS) |
|
||||
| Порт STARTTLS | **587** (STARTTLS) |
|
||||
| Шифрование | Обязательно SSL/TLS или STARTTLS |
|
||||
| Логин | Полный адрес `user@domain.cock.li` |
|
||||
|
||||
### IMAP (приём)
|
||||
|
||||
| Параметр | Значение |
|
||||
|-----------------|----------|
|
||||
| Сервер | `mail.cock.li` (или `37.120.193.124` с прокси) |
|
||||
| Порт SSL | **993** (SSL/TLS) ✅ доступен с прокси и DO |
|
||||
| Порт STARTTLS | **143** (STARTTLS) |
|
||||
| Шифрование | Обязательно |
|
||||
| Логин | Полный адрес `user@domain.cock.li` |
|
||||
|
||||
---
|
||||
|
||||
## Проверка доступа с серверов
|
||||
|
||||
### Валидация одной командой (с DO)
|
||||
|
||||
Скрипт проверяет IMAP 993 и SMTP 465/587. Запуск **с твоей машины** (скрипт выполнится на DO):
|
||||
|
||||
```bash
|
||||
ssh hunab-prod 'bash -s' < docs/firemail/validate_mail_from_do.sh
|
||||
```
|
||||
|
||||
**Ожидаемый результат с DO (2026-03-07):**
|
||||
|
||||
| Сервис | Результат | Комментарий |
|
||||
|---------------|-----------|-------------|
|
||||
| IMAP 993 | OK | Приём почты через туннель возможен |
|
||||
| SMTP 587 | FAIL | Таймаут с хостинга; не мешает туннелю IMAP |
|
||||
| SMTP 465 | FAIL | Таймаут с хостинга |
|
||||
|
||||
Итог: **почта по IMAP с DO работает.** SMTP с DO до cock.li недоступен — отправка только с машины (если 587 открыт) или через webmail.
|
||||
|
||||
### С прокси (149.154.64.19)
|
||||
|
||||
```bash
|
||||
# IMAP 993 — OK
|
||||
ssh -o StrictHostKeyChecking=accept-new -i "$HOME/.ssh/id_ed25519" ahau@149.154.64.19 \
|
||||
"echo 'Q' | timeout 12 openssl s_client -connect 37.120.193.124:993 -servername mail.cock.li -brief 2>&1"
|
||||
|
||||
# SMTP 465 / 587 — таймаут с прокси
|
||||
```
|
||||
|
||||
На прокси нет DNS для `mail.cock.li` (NXDOMAIN), поэтому подключаться по IP: `37.120.193.124`, с `-servername mail.cock.li` для SNI.
|
||||
|
||||
### С Digital Ocean (hunab-prod)
|
||||
|
||||
```bash
|
||||
# IMAP 993 — OK
|
||||
ssh hunab-prod "timeout 12 openssl s_client -connect 37.120.193.124:993 -servername mail.cock.li -brief </dev/null 2>&1"
|
||||
|
||||
# SMTP 465 / 587 — таймаут с DO
|
||||
```
|
||||
|
||||
### Локальная проверка SMTP (если у тебя открыт cock.li)
|
||||
|
||||
```bash
|
||||
openssl s_client -connect mail.cock.li:587 -starttls smtp -servername mail.cock.li -brief </dev/null
|
||||
```
|
||||
|
||||
Если видишь `CONNECTION ESTABLISHED` — в Thunderbird можно использовать прямой SMTP `mail.cock.li:587`.
|
||||
|
||||
---
|
||||
|
||||
## Приём писем (IMAP) через туннель
|
||||
|
||||
Туннель поднимаешь в терминале (сессия должна быть открыта или в фоне).
|
||||
|
||||
### Через прокси (из РФ быстрее)
|
||||
|
||||
```bash
|
||||
ssh -o StrictHostKeyChecking=accept-new -i ~/.ssh/id_ed25519 \
|
||||
-L 9143:37.120.193.124:993 \
|
||||
ahau@149.154.64.19 -N
|
||||
```
|
||||
|
||||
Или с алиасом из `~/.ssh/config`:
|
||||
|
||||
```bash
|
||||
ssh -L 9143:37.120.193.124:993 hsites-ahau -N
|
||||
```
|
||||
|
||||
### Через DO (если прокси недоступен)
|
||||
|
||||
```bash
|
||||
ssh -L 9143:37.120.193.124:993 hunab-prod -N
|
||||
```
|
||||
|
||||
### В фоне (опционально)
|
||||
|
||||
```bash
|
||||
ssh -f -L 9143:37.120.193.124:993 hsites-ahau -N
|
||||
# или
|
||||
ssh -f -L 9143:37.120.193.124:993 hunab-prod -N
|
||||
```
|
||||
|
||||
В Thunderbird: входящий сервер **127.0.0.1**, порт **9143**, без SSL, логин — полный email @cock.li.
|
||||
|
||||
---
|
||||
|
||||
## Отправка (SMTP) — варианты
|
||||
|
||||
- **Вариант A:** С твоей сети до mail.cock.li:587 достучаться можно → в Thunderbird SMTP: `mail.cock.li`, порт **587**, STARTTLS, логин — полный адрес.
|
||||
- **Вариант B:** С твоей сети 587 не открыт → поднять SMTP-релей на машине, откуда cock.li отвечает (домашний ПК, другой VPS), и в Thunderbird слать через туннель на этот релей.
|
||||
- **Вариант C:** Отправка только через webmail cock.li, приём — в Thunderbird по туннелю.
|
||||
|
||||
---
|
||||
|
||||
## Настройки в Thunderbird
|
||||
|
||||
Перед настройкой: поднять туннель IMAP (см. [Команды](#команды-для-копирования)), затем в Thunderbird добавить учётную запись или изменить существующую.
|
||||
|
||||
### Шаг 1: Туннель IMAP
|
||||
|
||||
В терминале запусти один из туннелей (сессия должна оставаться открытой или использовать `-f` для фона):
|
||||
|
||||
```bash
|
||||
ssh -L 9143:37.120.193.124:993 hunab-prod -N
|
||||
```
|
||||
|
||||
Или через прокси: `ssh -L 9143:37.120.193.124:993 hsites-ahau -N`
|
||||
|
||||
### Шаг 2: Учётная запись в Thunderbird
|
||||
|
||||
**Параметры входящей почты (IMAP через туннель):**
|
||||
|
||||
| Поле | Значение |
|
||||
|----------------|---------------|
|
||||
| Тип сервера | IMAP |
|
||||
| Сервер | `127.0.0.1` |
|
||||
| Порт | `9143` |
|
||||
| SSL/TLS | **Нет** (трафик уже в SSH) |
|
||||
| Обычная аутентификация | Вкл |
|
||||
| Логин | полный email (например `user@cock.li`) |
|
||||
| Пароль | пароль от почты cock.li |
|
||||
|
||||
**Параметры исходящей почты (SMTP):**
|
||||
|
||||
**Вариант 1 — прямой доступ к cock.li с твоей сети:**
|
||||
|
||||
| Поле | Значение |
|
||||
|----------------|------------------|
|
||||
| Сервер | `mail.cock.li` |
|
||||
| Порт | `587` |
|
||||
| Безопасность | STARTTLS |
|
||||
| Аутентификация| Обычный пароль |
|
||||
| Логин | полный email |
|
||||
|
||||
**Вариант 2 — SMTP через свой релей по туннелю:** сервер `127.0.0.1`, порт локального туннеля (например `1587`).
|
||||
|
||||
**Вариант 3 — отправка только через webmail:** в Thunderbird исходящий не настраивать; приём — по туннелю.
|
||||
|
||||
### Шаг 3: Проверка
|
||||
|
||||
- Получение: Thunderbird должен показать папки и письма (если туннель поднят и порт 9143 свободен).
|
||||
- Отправка: отправить тестовое письмо себе; при варианте 1 проверь, что с твоей сети открыт порт 587 до `mail.cock.li` (см. [локальная проверка SMTP](#локальная-проверка-smtp-если-у-тебя-открыт-cockli)).
|
||||
|
||||
### Краткая сводка полей
|
||||
|
||||
| Направление | Сервер | Порт | SSL | Логин |
|
||||
|-------------|------------|-------|-------|-------------|
|
||||
| Входящий | `127.0.0.1`| `9143`| Нет | user@cock.li |
|
||||
| Исходящий (прямой) | `mail.cock.li` | `587` | STARTTLS | user@cock.li |
|
||||
|
||||
---
|
||||
|
||||
## Команды для копирования
|
||||
|
||||
### 0. Валидация IMAP/SMTP с DO (проверить, что всё работает)
|
||||
|
||||
```bash
|
||||
ssh hunab-prod 'bash -s' < docs/firemail/validate_mail_from_do.sh
|
||||
```
|
||||
|
||||
Ожидается: `OK IMAP 993`, `FAIL` для SMTP 587/465 — этого достаточно для приёма по туннелю.
|
||||
|
||||
### 1. Туннель IMAP через прокси (основной)
|
||||
|
||||
```bash
|
||||
ssh -o StrictHostKeyChecking=accept-new -i ~/.ssh/id_ed25519 -L 9143:37.120.193.124:993 ahau@149.154.64.19 -N
|
||||
```
|
||||
|
||||
### 2. Туннель IMAP через прокси (алиас hsites-ahau)
|
||||
|
||||
```bash
|
||||
ssh -L 9143:37.120.193.124:993 hsites-ahau -N
|
||||
```
|
||||
|
||||
### 3. Туннель IMAP через DO
|
||||
|
||||
```bash
|
||||
ssh -L 9143:37.120.193.124:993 hunab-prod -N
|
||||
```
|
||||
|
||||
### 4. Туннель IMAP в фоне (прокси)
|
||||
|
||||
```bash
|
||||
ssh -f -o StrictHostKeyChecking=accept-new -i ~/.ssh/id_ed25519 -L 9143:37.120.193.124:993 ahau@149.154.64.19 -N
|
||||
```
|
||||
|
||||
### 5. Туннель IMAP в фоне (DO)
|
||||
|
||||
```bash
|
||||
ssh -f -L 9143:37.120.193.124:993 hunab-prod -N
|
||||
```
|
||||
|
||||
### 6. Проверка IMAP 993 с прокси
|
||||
|
||||
```bash
|
||||
ssh -o StrictHostKeyChecking=accept-new -i "$HOME/.ssh/id_ed25519" ahau@149.154.64.19 "echo 'Q' | timeout 12 openssl s_client -connect 37.120.193.124:993 -servername mail.cock.li -brief 2>&1"
|
||||
```
|
||||
|
||||
### 7. Проверка IMAP 993 с DO
|
||||
|
||||
```bash
|
||||
ssh hunab-prod "timeout 12 openssl s_client -connect 37.120.193.124:993 -servername mail.cock.li -brief </dev/null 2>&1"
|
||||
```
|
||||
|
||||
### 8. Проверка SMTP 587 локально
|
||||
|
||||
```bash
|
||||
openssl s_client -connect mail.cock.li:587 -starttls smtp -servername mail.cock.li -brief </dev/null
|
||||
```
|
||||
|
||||
### 9. Убить фоновый туннель на порту 9143
|
||||
|
||||
```bash
|
||||
# Найти процесс
|
||||
lsof -i :9143
|
||||
|
||||
# Завершить (подставить PID из вывода)
|
||||
kill <PID>
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Итог
|
||||
|
||||
| Направление | Как сделать |
|
||||
|-------------|-------------|
|
||||
| **Приём (IMAP)** | Туннель `-L 9143:37.120.193.124:993` на прокси или DO; в Thunderbird — 127.0.0.1:9143, без SSL. |
|
||||
| **Отправка (SMTP)** | Либо прямой mail.cock.li:587 (если доступен), либо свой SMTP-релей + туннель, либо только webmail. |
|
||||
|
||||
Дата гайда: 2026-03-07. Валидация с DO: `validate_mail_from_do.sh` — IMAP 993 OK, SMTP 465/587 недоступны с хостинга.
|
||||
68
docs/firemail/YANDEX_THUNDERBIRD_DOWNLOAD_DELETE.md
Normal file
68
docs/firemail/YANDEX_THUNDERBIRD_DOWNLOAD_DELETE.md
Normal file
@@ -0,0 +1,68 @@
|
||||
# Яндекс.Почта в Thunderbird: выгрузка с удалением с сервера
|
||||
|
||||
Чтобы при получении почты в Thunderbird письма **удалялись с Яндекса** (оставались только локально), нужно использовать **POP3**, а не IMAP, и отключить хранение на сервере.
|
||||
|
||||
---
|
||||
|
||||
## Почему POP3, а не IMAP
|
||||
|
||||
| Протокол | Поведение |
|
||||
|----------|-----------|
|
||||
| **IMAP** | Письма всегда синхронизированы с сервером. Удаление в клиенте обычно только помечает/удаляет на сервере — нет режима «забрал и стёр с сервера» одной настройкой. |
|
||||
| **POP3** | Клиент **забирает** письма. Есть опция «не оставлять на сервере» — после загрузки Thunderbird даёт команду серверу удалить письмо. |
|
||||
|
||||
Итог: для сценария «выгрузил в Thunderbird → с Яндекса всё удалилось» используем POP3.
|
||||
|
||||
---
|
||||
|
||||
## Настройка учётной записи в Thunderbird
|
||||
|
||||
### 1. Добавить учётную запись по POP3
|
||||
|
||||
- **Тип сервера входящей почты:** POP3 (не IMAP).
|
||||
- **Сервер:** `pop.yandex.com`
|
||||
- **Порт:** 995
|
||||
- **Шифрование:** SSL/TLS
|
||||
- **Логин:** полный адрес (например `pavel@ktoty.info`)
|
||||
- **Пароль:** пароль от ящика или [пароль приложения](https://yandex.ru/support/id/authorization/app-passwords.html), если включена 2FA.
|
||||
|
||||
### 2. Включить удаление с сервера после загрузки
|
||||
|
||||
В Thunderbird:
|
||||
|
||||
1. **Настройки** → **Параметры учётной записти** (или правый клик по учётной записи → Настройки).
|
||||
2. Открыть **Параметры сервера** (Server Settings) для этой учётной записи.
|
||||
3. Снять галочку **«Оставлять сообщения на сервере»** (Leave messages on server).
|
||||
|
||||
После этого при получении почты Thunderbird забирает письма по POP3 и даёт серверу команду удалить их — они остаются только у тебя локально, с Яндекса пропадают.
|
||||
|
||||
---
|
||||
|
||||
## Краткая сводка (Яндекс → Thunderbird, с удалением с сервера)
|
||||
|
||||
| Параметр | Значение |
|
||||
|----------|----------|
|
||||
| Входящий сервер | `pop.yandex.com` |
|
||||
| Порт | 995 |
|
||||
| Безопасность | SSL/TLS |
|
||||
| Логин | полный email |
|
||||
| **Оставлять сообщения на сервере** | **выключено** |
|
||||
|
||||
---
|
||||
|
||||
## Исходящая почта (SMTP)
|
||||
|
||||
Если нужно и отправлять письма из этого ящика через Thunderbird:
|
||||
|
||||
- **Сервер:** `smtp.yandex.com`
|
||||
- **Порт:** 465 (SSL) или 587 (STARTTLS)
|
||||
- **Логин/пароль:** те же, что для входящей.
|
||||
|
||||
---
|
||||
|
||||
## Важно
|
||||
|
||||
- После первого получения по POP3 с опцией «не оставлять на сервере» письма с ящика на Яндексе будут удалены. Имеет смысл один раз убедиться, что локально всё подтянулось (папки, нужные письма), прежде чем полагаться на это в постоянном режиме.
|
||||
- Если нужен и доступ с веба, и в Thunderbird с удалением с сервера — на сервере ничего не останется после загрузки в TB; веб-интерфейс будет пустой для этого ящика по входящим.
|
||||
|
||||
Дата: 2026-03-07.
|
||||
39
docs/firemail/validate_mail_from_do.sh
Normal file
39
docs/firemail/validate_mail_from_do.sh
Normal file
@@ -0,0 +1,39 @@
|
||||
#!/usr/bin/env bash
|
||||
# Проверка доступа к mail.cock.li (IMAP/SMTP) с текущей машины.
|
||||
# Запуск на DO: ssh hunab-prod 'bash -s' < docs/firemail/validate_mail_from_do.sh
|
||||
# Или скопировать на сервер и запустить там.
|
||||
|
||||
MAIL_IP="${MAIL_IP:-37.120.193.124}"
|
||||
MAIL_HOST="${MAIL_HOST:-mail.cock.li}"
|
||||
TIMEOUT=10
|
||||
|
||||
check() {
|
||||
local name="$1"
|
||||
local cmd="$2"
|
||||
if eval "$cmd" >/dev/null 2>&1; then
|
||||
echo "OK $name"
|
||||
return 0
|
||||
else
|
||||
echo "FAIL $name"
|
||||
return 1
|
||||
fi
|
||||
}
|
||||
|
||||
echo "Проверка доступа к $MAIL_HOST ($MAIL_IP)"
|
||||
echo "----------------------------------------"
|
||||
|
||||
# IMAP 993
|
||||
check "IMAP 993 (SSL)" \
|
||||
"timeout $TIMEOUT openssl s_client -connect $MAIL_IP:993 -servername $MAIL_HOST -brief </dev/null 2>&1 | grep -q 'CONNECTION ESTABLISHED'"
|
||||
|
||||
# SMTP 587
|
||||
check "SMTP 587 (STARTTLS)" \
|
||||
"timeout $TIMEOUT openssl s_client -connect $MAIL_IP:587 -starttls smtp -servername $MAIL_HOST -brief </dev/null 2>&1 | grep -q 'CONNECTION ESTABLISHED'" || true
|
||||
|
||||
# SMTP 465
|
||||
check "SMTP 465 (SSL)" \
|
||||
"timeout $TIMEOUT openssl s_client -connect $MAIL_IP:465 -servername $MAIL_HOST -brief </dev/null 2>&1 | grep -q 'CONNECTION ESTABLISHED'" || true
|
||||
|
||||
echo "----------------------------------------"
|
||||
echo "Итог: IMAP 993 должен быть OK для приёма почты через туннель."
|
||||
echo "SMTP 465/587 часто недоступны с хостингов (DO и др.); отправка — напрямую с машины или через webmail."
|
||||
Reference in New Issue
Block a user