Linux за българи: Форуми

Програмиране => Web development => Темата е започната от: makeme в Feb 10, 2020, 21:13



Титла: Bash скрипт за менажиране на домейни в Cloudflare
Публикувано от: makeme в Feb 10, 2020, 21:13
Здравейте колеги,

Пиша си едно баш скриптче за менажиране на записите в Cloudflare и реших да го споделя с вас.

https://github.com/makemegit/cloudflare_bash_admin/blob/master/cloudflare_bash_admin

Как работи?

Код
GeSHi (Bash):
  1. #------------------------------------------------------------------#
  2. # Cloudflare zone is the zone which holds the record               #
  3. zone=makemeone.tk       # Main Domain                              #
  4. # dnsrecord is the record which will be updated (no need to enter) #
  5. dnsrecord=www.makemeone.tk                                         #
  6. # Cloudflare authentication details. *Keep these private !!!       #
  7. cloudflare_auth_email=emailFAKE@gmail.com                      #!!!#
  8. cloudflare_auth_key=e07910a06a086c83bFAKE27aa00b26ed11126ed    #!!!#
  9. #------------------------------------------------------------------#

zone
Попълва се един от домейните в акаунта (за да има някаква база на променливите и по default да менажирате него)

dnsrecord
Някакъв негов запис за default. Примерно www.

cloudflare_auth_email
Мейла с който влизате в Cloudflare.

cloudflare_auth_key

Взима се от Cloudflare -> Overview -> Get your API token (долу вдясно) -> Global API Key

----------------------------------------

0.) При пускане на скрипта, виждате следните опции :

Цитат
$ ./cloudflare_bash_admin

Please Select for makemeone.tk :

1. List and select another Domain name
2. List and change DNS Records
3. Create new DNS Record (Not DONE)
4. Add new Domain (Not Done)
0. Quit

Enter selection [0-4] >


1.) При избиране на опция 1 се изброяват домейните в акаунта и може да въведете друг. Ако желаете само да ги видите, след като ги изброи, натиснете "q" за да се върнете назад:

Цитат
Domains in your Cloudflare account:
 
makemeone.tk
makemesrv.tk
 
Enter the domain name (q for back)> makemesrv.tk
Now you are managing  makemesrv.tk

2.) При избиране на опция 2 се изброяват записите за съответния домейн (избраният домейн го пише на реда Please Select for ... ) и може да го промените. Ако желаете само да ги видите, след като ги изброи, натиснете "q" за да се върнете назад:

Цитат
---- DNS Zone Rcords for makemesrv.tk  ----
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
ftp.makemesrv.tk A 178.162.201.194
mail.makemesrv.tk A 178.162.201.194
makemesrv.tk A 178.162.201.194
www.makemesrv.tk A 178.162.201.194
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Enter the subdomain name (q for back)> mail.makemesrv.tk A 178.162.201.195
Changing record for mail.makemesrv.tk to 178.162.201.195
true


Скриптът поддържа и различни типове записи. Например може да промените от А запис на CNAME:

Цитат
ftp.makemesrv.tk A 178.162.201.194
mail.makemesrv.tk A 178.162.201.195
makemesrv.tk A 178.162.201.194
www.makemesrv.tk A 178.162.201.194
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Enter the subdomain name (q for back)> mail.makemesrv.tk CNAME makemesrv.tk
Changing record for mail.makemesrv.tk to makemesrv.tk
true
*Между другото ако не върне true, значи нещо не работи (примерно синтаксиса ви е грешен) и не е променило нищо  :P


За сега съм стигнал до тук :) Ще обновявам като има прогрес и с други благинки :)

ПП: Домейните и IP-тата са реални, но са регистрирани само заради този скрипт и тестовете покрай него. Затова предпочетох да ви дам истински, нецензориран изход. По-нататък може и да ги цензорирам, когато всички ги видите :)
ПП2: Имах малък проблем с избирането на раздела за тоя скрипт. Така че, @go_fire, ако сметнеш, че е за другъде, мести.


Титла: Re: Bash скрипт за менажиране на домейни в Cloudflare
Публикувано от: go_fire в Feb 11, 2020, 13:12
Според мен раздела си е добър.

Но аз бих сложил абсолютно същото нещо и на:

https://www.linux-bg.org/cgi-bin/y/index.pl?page=repository

п.п. Знам, че там форматирането е мъка, но може и изобщо без форматиране.