206 lines
7.0 KiB
Markdown
206 lines
7.0 KiB
Markdown
# 🔧 Решение проблем с API reg.ru
|
||
|
||
## ❌ Проблема: "Access to API from this IP denied"
|
||
|
||
Эта ошибка возникает, когда API reg.ru заблокирован для вашего IP адреса из соображений безопасности.
|
||
|
||
### 🔍 Диагностика
|
||
|
||
Сначала определите ваш текущий IP адрес:
|
||
|
||
```bash
|
||
# Способ 1: Через встроенную функцию скрипта
|
||
sudo letsencrypt-regru --test-api
|
||
|
||
# Способ 2: Через curl
|
||
curl -s https://ipinfo.io/ip
|
||
|
||
# Способ 3: Через веб-сайт
|
||
# Откройте https://whatismyipaddress.com/
|
||
```
|
||
|
||
### ✅ Решение
|
||
|
||
#### Метод 1: Добавить IP в белый список (рекомендуется)
|
||
|
||
1. **Войдите в личный кабинет reg.ru**
|
||
- Откройте https://www.reg.ru/
|
||
- Войдите в личный кабинет
|
||
|
||
2. **Перейдите в настройки API**
|
||
- Меню → "Настройки"
|
||
- Раздел "Безопасность"
|
||
- Подраздел "API"
|
||
|
||
3. **Настройте доступ по IP**
|
||
- Найдите раздел "Ограничения по IP"
|
||
- Нажмите "Добавить IP адрес"
|
||
- Введите ваш текущий IP адрес
|
||
- Сохраните настройки
|
||
|
||
4. **Проверьте настройки**
|
||
```bash
|
||
sudo letsencrypt-regru --test-api
|
||
```
|
||
|
||
#### Метод 2: Отключить ограничения по IP (менее безопасно)
|
||
|
||
⚠️ **ВНИМАНИЕ**: Это снижает безопасность вашего аккаунта!
|
||
|
||
1. В настройках API reg.ru найдите "Ограничения по IP"
|
||
2. Отключите опцию "Разрешить доступ только с указанных IP"
|
||
3. Сохраните настройки
|
||
|
||
### 🔒 Рекомендации по безопасности
|
||
|
||
1. **Используйте статический IP**
|
||
- Если у вас динамический IP, рассмотрите покупку статического
|
||
- Или регулярно обновляйте список разрешенных IP
|
||
|
||
2. **Ограничьте доступ к API**
|
||
- Добавляйте только необходимые IP адреса
|
||
- Регулярно проверяйте и очищайте список
|
||
|
||
3. **Используйте сильные пароли**
|
||
- Сложный пароль для аккаунта reg.ru
|
||
- Двухфакторная аутентификация если доступна
|
||
|
||
## ❌ Проблема: "Invalid username or password"
|
||
|
||
### ✅ Решение
|
||
|
||
1. **Проверьте учетные данные**
|
||
```bash
|
||
sudo nano /etc/letsencrypt-regru/config.json
|
||
```
|
||
|
||
Убедитесь что указаны правильные:
|
||
- `regru_username` - логин от reg.ru
|
||
- `regru_password` - пароль от reg.ru
|
||
|
||
2. **Проверьте права на файл**
|
||
```bash
|
||
sudo chmod 600 /etc/letsencrypt-regru/config.json
|
||
sudo chown root:root /etc/letsencrypt-regru/config.json
|
||
```
|
||
|
||
3. **Протестируйте подключение**
|
||
```bash
|
||
sudo letsencrypt-regru --test-api
|
||
```
|
||
|
||
## ❌ Проблема: "IP exceeded allowed connection rate"
|
||
|
||
### Причина
|
||
API reg.ru ограничивает частоту запросов с одного IP (обычно 10-20 запросов в минуту).
|
||
|
||
### ✅ Решение
|
||
|
||
1. **Подождите 5-10 минут**
|
||
```bash
|
||
# Подождите перед следующей попыткой
|
||
sleep 600 # 10 минут
|
||
sudo letsencrypt-regru --obtain
|
||
```
|
||
|
||
2. **Настройте автоматизацию правильно**
|
||
```bash
|
||
# Проверка сертификатов 1 раз в день
|
||
sudo systemctl enable letsencrypt-regru.timer
|
||
sudo systemctl start letsencrypt-regru.timer
|
||
|
||
# Проверить расписание
|
||
sudo systemctl cat letsencrypt-regru.timer
|
||
```
|
||
|
||
3. **Рекомендации по частоте запросов**
|
||
- ✅ Автоматическая проверка: **1 раз в день**
|
||
- ✅ Ручная проверка: **не чаще 1 раза в час**
|
||
- ❌ Избегайте частых тестов `--test-api`
|
||
- ❌ Не создавайте cron с частым запуском
|
||
|
||
4. **Используйте --check вместо --obtain**
|
||
```bash
|
||
# Проверка без создания сертификата
|
||
sudo letsencrypt-regru --check
|
||
```
|
||
|
||
## ❌ Проблема: Таймаут подключения
|
||
|
||
### ✅ Решение
|
||
|
||
1. **Проверьте интернет соединение**
|
||
```bash
|
||
ping -c 4 api.reg.ru
|
||
curl -I https://api.reg.ru/api/regru2
|
||
```
|
||
|
||
2. **Проверьте брандмауэр**
|
||
```bash
|
||
# Временно отключите firewall для теста
|
||
sudo ufw status
|
||
sudo iptables -L
|
||
```
|
||
|
||
3. **Проверьте прокси настройки**
|
||
- Убедитесь что переменные окружения `HTTP_PROXY`, `HTTPS_PROXY` не мешают
|
||
|
||
## 🧪 Тестирование API
|
||
|
||
Всегда тестируйте API перед использованием:
|
||
|
||
```bash
|
||
# Полный тест API
|
||
sudo letsencrypt-regru --test-api
|
||
|
||
# Тест с подробным выводом
|
||
sudo letsencrypt-regru --test-api -v
|
||
|
||
# Проверка конфигурации
|
||
sudo letsencrypt-regru --check
|
||
```
|
||
|
||
## 📞 Получение помощи
|
||
|
||
### Техподдержка reg.ru
|
||
|
||
- **Email**: support@reg.ru
|
||
- **Телефон**: 8 (495) 580-11-11
|
||
- **Онлайн чат**: на сайте reg.ru
|
||
|
||
### Документация
|
||
|
||
- **API reg.ru**: https://www.reg.ru/support/api
|
||
- **Примеры использования**: https://www.reg.ru/support/api/examples
|
||
- **FAQ по API**: https://www.reg.ru/support/api/faq
|
||
|
||
### Логи для диагностики
|
||
|
||
Всегда включайте логи при обращении в поддержку:
|
||
|
||
```bash
|
||
# Включить подробные логи
|
||
sudo letsencrypt-regru --test-api -v
|
||
|
||
# Посмотреть последние логи
|
||
sudo tail -n 50 /var/log/letsencrypt-regru/letsencrypt_regru.log
|
||
|
||
# Логи certbot
|
||
sudo tail -n 50 /var/log/letsencrypt/letsencrypt.log
|
||
```
|
||
|
||
## 🔄 Альтернативные DNS провайдеры
|
||
|
||
Если проблемы с reg.ru API критичны, рассмотрите альтернативы:
|
||
|
||
1. **Cloudflare** - отличный API, бесплатный DNS
|
||
2. **Route53** (AWS) - мощный, но платный
|
||
3. **DigitalOcean DNS** - простой и надежный
|
||
4. **Google Cloud DNS** - интеграция с GCP
|
||
|
||
Для них потребуется модификация скрипта или использование других плагинов certbot.
|
||
|
||
---
|
||
|
||
**Дата обновления**: 29.10.2025
|
||
**Версия документа**: 1.0 |