Код должен быть открытый
На вход подаются
Список доменов (файл)
Может быть в виде domain:IP
Может быть в виде domain
IP для A-записи (входной параметр), может быть пустым
Данные почты (wildcard, домен email, IMAP/POP3)
Число доменов на аккаунт КФ (не более)
Функционал:
На каждом этапе проверяем, все ли пошло по плану (наличие форм, элементов, контента на странице). Если нет - стопим, выдаем ошибку и пишем ее в текстовый лог-файл
При необходимости решаем капчу
Формат сохранения результатов - CSV, каждая ячейка экранируется двойными кавычками
1) Проверяем, если IP задан входным параметром, используем его
2) Если IP входного нет, делаем проверку для каждого домена
Если нет IP, выдаем ошибку и пишем ее дополнительно в текстовый лог-файл
3) Регистрируемся
При регистрации используем электронную почту вида
[email protected]
Пароль генерируем
4) Ждем письма, кликаем на ссылку
На странице My profile идем в аутентификацию
Включаем двухфакторную аутентификацию
Включаем ее через использование переменной, а не через обработку картинки, ПЕРЕМЕННУЮ СОХРАНЯЕМ!!!
Сохраняем коды восстановления
Проверяем, включилась ли 2FA
Генерируем API токен, разрешения
Edit zone DNS
Zone DNS -> edit
Include all zones
Поля IP и TTL оставляем пустыми
Копируем
API token
Global API key
Origin CA key
5) Проверяем, не достигнут ли лимит на число доменнов на аккаунт, если достигнут, регистрируем новый
6) Если все ок, добавляем домен, выбирая бесплатный тариф
ДЛЯ НЕКОТОРЫХ ЗОН или доменов может появляться ошибка (домен не зарегистрирован, например), ошибку логгируем, двигаемся дальше
5) На этапе Quickscan (проверка существующих DNS записей) УДАЛЯЕМ ВСЕ записи, если они есть
Иногда выскакивает другая форма Quick start, нужно иметь возможность проверки, какая именна появляетмся
6) Прописываем рут (@) A-запись - наш IP адрес (из входной переменной или из строки с доменом, выше приоритет у входного параметра)
7) Прописываем CNAME www=domain
Получаем DNS-серверы, которые нужно прописать у регистратора, жмем кнопку "Check nameservers"
9) На странице "Quick start quide" заполняем все галочки
- Improve security - Automatic HTTPs
- Always use HTTPs
- Auto minify: JS, CSS, HTML
- Brotli
Finish
10) Вкладка SSL/TLS - выбираем Flexible
11) На странице dash.cloudflare.com проверяем, появился ли домен, если да (в любом статусе - Pending или Active), считаем, что все ок
ПИШЕМ в result.txt
Domain, Email (CF login), CF password, A-record (IP), Hash 2FA, 2FA recovery codes, API token, Global API key, Origin CA key
На вход подаются
Список доменов (файл)
Может быть в виде domain:IP
Может быть в виде domain
IP для A-записи (входной параметр), может быть пустым
Данные почты (wildcard, домен email, IMAP/POP3)
Число доменов на аккаунт КФ (не более)
Функционал:
На каждом этапе проверяем, все ли пошло по плану (наличие форм, элементов, контента на странице). Если нет - стопим, выдаем ошибку и пишем ее в текстовый лог-файл
При необходимости решаем капчу
Формат сохранения результатов - CSV, каждая ячейка экранируется двойными кавычками
1) Проверяем, если IP задан входным параметром, используем его
2) Если IP входного нет, делаем проверку для каждого домена
Если нет IP, выдаем ошибку и пишем ее дополнительно в текстовый лог-файл
3) Регистрируемся
При регистрации используем электронную почту вида
[email protected]
Пароль генерируем
4) Ждем письма, кликаем на ссылку
На странице My profile идем в аутентификацию
Включаем двухфакторную аутентификацию
Включаем ее через использование переменной, а не через обработку картинки, ПЕРЕМЕННУЮ СОХРАНЯЕМ!!!
Сохраняем коды восстановления
Проверяем, включилась ли 2FA
Генерируем API токен, разрешения
Edit zone DNS
Zone DNS -> edit
Include all zones
Поля IP и TTL оставляем пустыми
Копируем
API token
Global API key
Origin CA key
5) Проверяем, не достигнут ли лимит на число доменнов на аккаунт, если достигнут, регистрируем новый
6) Если все ок, добавляем домен, выбирая бесплатный тариф
ДЛЯ НЕКОТОРЫХ ЗОН или доменов может появляться ошибка (домен не зарегистрирован, например), ошибку логгируем, двигаемся дальше
5) На этапе Quickscan (проверка существующих DNS записей) УДАЛЯЕМ ВСЕ записи, если они есть
Иногда выскакивает другая форма Quick start, нужно иметь возможность проверки, какая именна появляетмся
6) Прописываем рут (@) A-запись - наш IP адрес (из входной переменной или из строки с доменом, выше приоритет у входного параметра)
7) Прописываем CNAME www=domain
Получаем DNS-серверы, которые нужно прописать у регистратора, жмем кнопку "Check nameservers"
9) На странице "Quick start quide" заполняем все галочки
- Improve security - Automatic HTTPs
- Always use HTTPs
- Auto minify: JS, CSS, HTML
- Brotli
Finish
10) Вкладка SSL/TLS - выбираем Flexible
11) На странице dash.cloudflare.com проверяем, появился ли домен, если да (в любом статусе - Pending или Active), считаем, что все ок
ПИШЕМ в result.txt
Domain, Email (CF login), CF password, A-record (IP), Hash 2FA, 2FA recovery codes, API token, Global API key, Origin CA key