тест шифрования при пуше

This commit is contained in:
Сергей Антропов
2025-10-30 01:26:48 +03:00
parent 981ede5c94
commit 25d04188b8
4 changed files with 980 additions and 803 deletions

View File

@@ -321,19 +321,8 @@ vault:
read -p "Введите имя роли: " ROLE; \ read -p "Введите имя роли: " ROLE; \
$(MAKE) decrypt-role ROLE="$$ROLE";; \ $(MAKE) decrypt-role ROLE="$$ROLE";; \
rekey) \ rekey) \
echo "🔑 Смена пароля для vars/main.yml..."; \ echo "🔑 Смена пароля для всех vars/main.yml..."; \
echo "Выберите действие:"; \ $(MAKE) rekey-all;; \
echo " 1) Сменить пароль для всех ролей"; \
echo " 2) Сменить пароль для одной роли"; \
read -p "Введите номер (1-2): " CHOICE; \
case "$$CHOICE" in \
1) $(MAKE) rekey-all;; \
2) echo "📋 Доступные роли:"; \
ls -1 roles | grep -v "\\.yml$$" | sed 's/^/ - /'; \
read -p "Введите имя роли: " ROLE; \
$(MAKE) rekey-role ROLE="$$ROLE";; \
*) echo "❌ Неверный выбор"; exit 1;; \
esac;; \
check) \ check) \
echo "🔍 Проверка vault файлов..."; \ echo "🔍 Проверка vault файлов..."; \
if [ ! -d "vault" ]; then \ if [ ! -d "vault" ]; then \
@@ -390,7 +379,7 @@ vault:
echo " 💡 Создает незашифрованную копию"; \ echo " 💡 Создает незашифрованную копию"; \
echo ""; \ echo ""; \
echo " 🔑 make vault rekey - сменить пароль шифрования"; \ echo " 🔑 make vault rekey - сменить пароль шифрования"; \
echo " 💡 Изменяет пароль для всех или одной роли"; \ echo " 💡 Изменяет пароль для всех ролей"; \
echo ""; \ echo ""; \
echo " ✅ make vault check - проверить vault файлы"; \ echo " ✅ make vault check - проверить vault файлы"; \
echo " 💡 Проверяет структуру и статус файлов"; \ echo " 💡 Проверяет структуру и статус файлов"; \
@@ -419,9 +408,10 @@ git:
done; \ done; \
fi; \ fi; \
fi; \ fi; \
$(MAKE) decrypt-all; \ $(MAKE) encrypt-all; \
git add .; \ git add .; \
git commit -m "Обновление проекта"; \ read -p "Введите сообщение коммита: " COMMIT_MSG; \
git commit -m "$$COMMIT_MSG"; \
git push origin main;; \ git push origin main;; \
pull) \ pull) \
echo "📥 Получение изменений из репозитория..."; \ echo "📥 Получение изменений из репозитория..."; \
@@ -1592,7 +1582,7 @@ help:
@echo " make vault show - показать содержимое секретов" @echo " make vault show - показать содержимое секретов"
@echo " make vault encrypt - зашифровать файл" @echo " make vault encrypt - зашифровать файл"
@echo " make vault decrypt - расшифровать файл" @echo " make vault decrypt - расшифровать файл"
@echo " make vault rekey - сменить пароль шифрования (все/одна роль)" @echo " make vault rekey - сменить пароль шифрования для всех ролей"
@echo " make vault check - проверить vault файлы" @echo " make vault check - проверить vault файлы"
@echo " make vault scan - поиск потенциальных секретов" @echo " make vault scan - поиск потенциальных секретов"
@echo "" @echo ""
@@ -1687,40 +1677,56 @@ decrypt-all:
done' done'
rekey-all: rekey-all:
@echo "🔑 Смена пароля для всех roles/*/vars/main.yml (только зашифрованных) ..." @echo "🔑 Смена пароля для всех roles/*/vars/main.yml ..."
@docker run --rm -it -v "$(PWD):/workspace" -w /workspace $(DOCKER_IMAGE) bash -c '\ @echo "🔍 Проверка статуса шифрования файлов..."
VAULT=vault/.vault; \ @UNENCRYPTED_FILES=$$(docker run --rm -v "$(PWD):/workspace" -w /workspace $(DOCKER_IMAGE) bash -c '\
for f in roles/*/vars/main.yml; do [ -f "$$f" ] || continue; \ for f in roles/*/vars/main.yml; do [ -f "$$f" ] || continue; \
if grep -q "ANSIBLE_VAULT" "$$f" 2>/dev/null; then \ if ! grep -q "ANSIBLE_VAULT" "$$f" 2>/dev/null; then \
printf "🔑 Смена пароля для: %s\n" "$$f"; \ echo "$$f"; \
ansible-vault rekey --vault-password-file "$$VAULT" "$$f" || true; \
printf "✅ Пароль изменен: %s\n" "$$f"; \
else \
printf " Пропущено (не зашифровано): %s\n" "$$f"; \
fi; \ fi; \
done' done'); \
if [ -n "$$UNENCRYPTED_FILES" ]; then \
echo "❌ Ошибка: Для смены пароля все файлы должны быть зашифрованы!"; \
echo "📋 Незашифрованные файлы:"; \
echo "$$UNENCRYPTED_FILES" | sed 's/^/ - /'; \
echo ""; \
echo "💡 Сначала зашифруйте все файлы командой: make encrypt-all"; \
exit 0; \
fi; \
echo "✅ Все файлы зашифрованы, можно менять пароль"; \
echo "📝 Введите новый пароль для vault:"; \
read -sp "Новый пароль: " NEW_PASSWORD; \
echo ""; \
echo "$$NEW_PASSWORD" > vault/.vault.new; \
chmod 600 vault/.vault.new; \
docker run --rm -it -v "$(PWD):/workspace" -w /workspace $(DOCKER_IMAGE) bash -c '\
VAULT=vault/.vault; \
NEW_VAULT=vault/.vault.new; \
for f in roles/*/vars/main.yml; do [ -f "$$f" ] || continue; \
printf "🔑 Смена пароля для: %s\n" "$$f"; \
ansible-vault rekey --vault-password-file "$$VAULT" --new-vault-password-file "$$NEW_VAULT" "$$f" || true; \
printf "✅ Пароль изменен: %s\n" "$$f"; \
done'; \
mv vault/.vault.new vault/.vault; \
echo "✅ Пароль vault обновлен для всех ролей"
# Вспомогательные функции: шифрование/расшифровка ТОЛЬКО одной роли # Вспомогательные функции: шифрование/расшифровка ТОЛЬКО одной роли
.PHONY: encrypt-role decrypt-role rekey-role .PHONY: encrypt-role decrypt-role rekey-role
encrypt-role: encrypt-role:
@ROLE_NAME="$(ROLE)"; \ @ROLE_NAME="$(ROLE)"; \
if [ -z "$$ROLE_NAME" ]; then \
echo "📋 Доступные роли:"; \ echo "📋 Доступные роли:"; \
ls -1 roles | grep -v "\.yml$$" | sed 's/^/ - /'; \ ls -1 roles | grep -v "\.yml$$" | sed 's/^/ - /'; \
if [ -z "$$ROLE_NAME" ]; then \
read -p "Введите имя роли: " ROLE_NAME; \ read -p "Введите имя роли: " ROLE_NAME; \
fi; \ fi; \
if [ ! -d "roles/$$ROLE_NAME" ]; then \ if [ ! -d "roles/$$ROLE_NAME" ]; then \
echo "❌ Роль '$$ROLE_NAME' не найдена"; \ echo "❌ Роль '$$ROLE_NAME' не найдена"; \
echo "📋 Доступные роли:"; \
ls -1 roles | grep -v "\\.yml$$" | sed 's/^/ - /'; \
echo "↩️ Возврат в интерактивный выбор роли для шифрования..."; \
$(MAKE) vault encrypt; \
exit 0; \ exit 0; \
fi; \ fi; \
FILE="roles/$$ROLE_NAME/vars/main.yml"; \ FILE="roles/$$ROLE_NAME/vars/main.yml"; \
if [ ! -f "$$FILE" ]; then \ if [ ! -f "$$FILE" ]; then \
echo "❌ Файл $$FILE не найден"; \ echo "❌ Файл $$FILE не найден"; \
exit 1; \ exit 0; \
fi; \ fi; \
if grep -q "ANSIBLE_VAULT" "$$FILE" 2>/dev/null; then \ if grep -q "ANSIBLE_VAULT" "$$FILE" 2>/dev/null; then \
echo " Уже зашифровано: $$FILE"; \ echo " Уже зашифровано: $$FILE"; \
@@ -1733,23 +1739,19 @@ encrypt-role:
decrypt-role: decrypt-role:
@ROLE_NAME="$(ROLE)"; \ @ROLE_NAME="$(ROLE)"; \
if [ -z "$$ROLE_NAME" ]; then \
echo "📋 Доступные роли:"; \ echo "📋 Доступные роли:"; \
ls -1 roles | grep -v "\.yml$$" | sed 's/^/ - /'; \ ls -1 roles | grep -v "\.yml$$" | sed 's/^/ - /'; \
if [ -z "$$ROLE_NAME" ]; then \
read -p "Введите имя роли: " ROLE_NAME; \ read -p "Введите имя роли: " ROLE_NAME; \
fi; \ fi; \
if [ ! -d "roles/$$ROLE_NAME" ]; then \ if [ ! -d "roles/$$ROLE_NAME" ]; then \
echo "❌ Роль '$$ROLE_NAME' не найдена"; \ echo "❌ Роль '$$ROLE_NAME' не найдена"; \
echo "📋 Доступные роли:"; \
ls -1 roles | grep -v "\\.yml$$" | sed 's/^/ - /'; \
echo "↩️ Возврат в интерактивный выбор роли для расшифровки..."; \
$(MAKE) vault decrypt; \
exit 0; \ exit 0; \
fi; \ fi; \
FILE="roles/$$ROLE_NAME/vars/main.yml"; \ FILE="roles/$$ROLE_NAME/vars/main.yml"; \
if [ ! -f "$$FILE" ]; then \ if [ ! -f "$$FILE" ]; then \
echo "❌ Файл $$FILE не найден"; \ echo "❌ Файл $$FILE не найден"; \
exit 1; \ exit 0; \
fi; \ fi; \
if ! grep -q "ANSIBLE_VAULT" "$$FILE" 2>/dev/null; then \ if ! grep -q "ANSIBLE_VAULT" "$$FILE" 2>/dev/null; then \
echo " Уже расшифровано: $$FILE"; \ echo " Уже расшифровано: $$FILE"; \

View File

@@ -1,262 +1,386 @@
--- $ANSIBLE_VAULT;1.1;AES256
# OS-специфичные переменные для роли devops 63346531306331313430353633623137363537613930656238386230633063643464623339626434
# Автор: Сергей Антропов 6436646339663865356131326136646465613335336237310a393232343037333161613666303136
# Сайт: https://devops.org.ru 65396539336462356438336363376335303562663464623539316537643932653531333266373663
3662393062386235300a383732616263383734646438656434346137353634373965316262663138
# Определение семейства ОС 39643438333037326162383435626433613531343334343662336662333165343532616263396134
devops_os_family: "{{ ansible_os_family | lower }}" 34333565363035653761663932633731333765323465613630386236663064393933376463343938
devops_distribution: "{{ ansible_distribution | lower }}" 35653939613366656338353336343735316336643765666531633435393663346133313131316632
devops_distribution_version: "{{ ansible_distribution_version | lower }}" 63656231393362336531656236313764643331666538613131326361353666656533653838306334
31393838393334363861363634353865656133306664376433313033633261613138613764363034
# Настройки для разных семейств ОС 32333630613762633437363037393163623330653335356430623538343336623166346439383763
devops_os_config: 66666461663537343935353165616236393838373065623863316139663332343033366238373230
redhat: 62333665633237316662666233313364346339376434326334343961336161346465306630336335
package_manager: "yum" 64313565373035363663616232353964303230356638363961313464643065353335346231633430
user_management: "useradd" 64386663373933303063383431373836376433363138633865336234643966383930363532316466
group_management: "groupadd" 66303964313932373963636362336166336564653531666633646631316338646232356165333139
sudo_group: "wheel" 38396365326439363031313663313031333033636461343166393762316531323532386162643365
additional_groups: 30393337303537346531373539323661356234396437306432313461623630303465313139333265
- "wheel" 31613762323439333732646130306234363337636637303461313763356363626134336162326563
- "docker" 62636336356635316435326361653936623733326463623830633666613966616436643633643965
- "systemd-journal" 34346262623135613066623139653965363465333466663634373033336231346264346335323064
packages: 39303437336136343262343235363864323361653133333039623965613662306330356436393965
- "sudo" 32623132613130313464623365646233366165366531366639333563303436613734396539326166
- "curl" 31336466386132346239316234643933333732373437636437333835363666346263346231623637
- "wget" 61616332376435363931653536356438376430393233663534343838316530323362616639613337
- "nano" 30663266643337626565663836363264653236663361316432353335376533316334396264316231
- "mc" 39373830663130646637303332616231366238323739663837626637363435336336373534333263
- "tar" 32643363353033346361346134336233393938643633646465313766613731353031636130643565
- "gzip" 65303436633632356463356265363262656232303932633330386461656666316266663466313336
services: 30663762653437653231306462653939323661396166616239323137333966393735373032373961
- "sshd" 64366130323864313064643532396334656230656161656564313133383639303861643737383739
sudoers_path: "/etc/sudoers.d" 39623431336161323933623965643032633465336336316536643162336434313962633738316631
ssh_config_path: "/etc/ssh/sshd_config" 30313433393632623932363432303030373966383663653666346261323365393764613637333962
debian: 37643235393264653330303732316163346365313539653836376162616132313564613333613365
package_manager: "apt" 32666638356536633235343335343664326365333665353930336465616363376263356166653062
user_management: "useradd" 61653939326534633937343561303839333466656134356233636130656333616538313930613763
group_management: "groupadd" 31313137336263346366373539316232633530656432633334336663333061656164333865383262
sudo_group: "sudo" 62346361653361663534616166363537353563663832333536653661303436316666626164323563
additional_groups: 35393531386463353737373265343263363335336463653261373366323437386462333933623838
- "sudo" 64613935623864353731616239333461333834356634636463626138623264656131313463626535
- "docker" 32646361666562363966663737663833653332656564336234333664393935663535376132326366
- "systemd-journal" 32633433306439393766666262643766646432663033626538323735616366613131373635316432
packages: 31393062383236643236663530343734643036363039363666613761643936303035393033366463
- "sudo" 34353165653333613734653733653136303265633936333934643663633761643662356663383534
- "curl" 35646261353136303964363833376434363833663938343261313139643665393832316333663437
- "wget" 35376363393336373765643832613461643866343133666261333833306566626239313064343961
- "nano" 66333966623330343235316237663035363464386263623439653666666461626134373335626462
- "mc" 66356330626532646639306461373538613964396461386363336335393261343337353132353832
- "tar" 64623639366239366131343038333332376363336238393965343661316435626164366539656263
- "gzip" 39316266643266613037653536393661323838633339633066303738326537303832653238373961
services: 66333730303130626639666430353463643435303265336132366133386135643835326666633834
- "ssh" 34663762663738623032343562623335643238353566373039613761616566623461336566653032
sudoers_path: "/etc/sudoers.d" 66623837313330336466623534623366633361663135626437323065396562333464636531326130
ssh_config_path: "/etc/ssh/sshd_config" 66363130353133623131616536656266306638366333383266373563353865363132383362656463
suse: 34383733323863613337346631353233643838313132303031356665616364383763306535666537
package_manager: "zypper" 33313737653865346132646265333336386161303865373135383534616132643366306339393136
user_management: "useradd" 62376135663239643965653366376633373236386664386363623163376236633264303265363130
group_management: "groupadd" 66633032643434316338383233653061373862633537316632366435386539323632623939356530
sudo_group: "wheel" 32366534666564353631623538653938356132343032626239303433346666306435333232333837
additional_groups: 37356134626431633330366530663233373831663730353634393531306565373039393236393666
- "wheel" 36326136363566656539303135313462323262373530356666646539636166376635636437353038
- "docker" 66323237343139623865383433383038616135633133393662356166633363643965313432366161
- "systemd-journal" 66626539653435653732326562366231313463393065313935356534633965363362396132353661
packages: 35373538363331663830343166363130376264663538373033636139623139303033666633376336
- "sudo" 61323732613232313663646637333266313333393864303937346635643532383739656238366636
- "curl" 35353764363363653037353130303432616230306439633332373332626564393566363733353364
- "wget" 30326461636130383631336635623935366432366331623963396565313532653433663166636231
- "nano" 66656664363462323934313761383035393766373930363138666639343839336662623137663532
- "mc" 36346239363533613036373338386335306334653933626566616566666639663234643138363666
- "tar" 66663764363631633032656661643437376330643032363365376330373834376335346433633230
- "gzip" 62366362353938373161666462666439373465343237363961333865323463653965313961313735
services: 65306134666562663832303833663137353932353434663365346235376434613134346334616234
- "sshd" 32313536336337363439343761336164316265336363613230363562323631323132323038376632
sudoers_path: "/etc/sudoers.d" 34393065383630663130623961386639326638323734323962636530313635323166363731373637
ssh_config_path: "/etc/ssh/sshd_config" 33313763373332306464393432383565343736373638306632346661306362313632616533373735
alpine: 34663263316364353466623937643430373838366232346139396532313533643136643035333136
package_manager: "apk" 66373238626130623439623961323737323066313138346132363131303833353866383836316137
user_management: "adduser" 33346537663830643863386132643335336364376439383764383132346132363466636631616335
group_management: "addgroup" 38623735353262643031323035323436633336376336333536666331303334326431363538373633
sudo_group: "wheel" 64653661303165666139383937633961653034613537353063366262323033633735646365633631
additional_groups: 64343937636566623035653866646437656436326366626232653736373463363636333432613461
- "wheel" 31353534313632313837613663366638323738613530343866653734623432616162393735363131
- "docker" 38656335393363333538303037373339623263623938333931373131613365366334373134353331
packages: 32663564383339303664613031626134393463613736376461363963656639363761383230316530
- "sudo" 35643465653461623934313037383264313737373537393864353965633035653932366263383436
- "openssh" 37353165643836366232363436643730643261306235366632663334643037616134646134643565
- "curl" 61363939333132643362656663383834643138626230316234626237313262663437633637336363
- "wget" 30313438343231636432333632333733316466396263626665343235623039383331363130343264
- "mc" 64633231653934306164353766376231626435346665323438383961356435653733313332633836
- "nano" 39633130363630326263386531346636343031376463313236306237393539366336373536323132
- "tar" 30636631653566663030663066666437303361366464633030616333306462323434343338356634
- "gzip" 63363439353866396230656432393034623034353862386231363134326539393164313734656131
services: 61393737653535663233646562393736313339366433616539336364643235306163646462303539
- "sshd" 36633662343861376466646233303531396230633865303435613831343237633034366633313236
sudoers_path: "/etc/sudoers.d" 66346439656532613834353333613933656534663432336139666636333563666635383136366464
ssh_config_path: "/etc/ssh/sshd_config" 34383530396534663665386235353761653164383434333432633737336136333039326238633936
61376437356434623266376565646466373935653965333362303334386437333937643830643336
# Специфичные настройки для российских ОС 33373339313334623431376163363164663766373464373632646630363661653764346665323935
devops_russian_os_config: 63626432643866323965396538343939343162393966383264353563373461633339386666643138
clearlinux: # Astra Linux определяется как clearlinux 32616238313131616165353339663030356664353334633266626432663362383763343264626362
package_manager: "apt" 62333861616130376331313765393764636433633332326431386462323938646333303630623338
user_management: "useradd" 30376265653262643535633533373839663565353264323661353234333234376136373330636434
group_management: "groupadd" 31636332306161396561633264306161323539346361373532396236653530636431396364323237
sudo_group: "sudo" 65663465313338653761626465633439383534373966376432333134353531653564323365356363
additional_groups: 31373564346666343331663933613135303061613037336139353630663435333537643033343734
- "sudo" 37663963363036343662383932363539303430363839366136373737646466643063643834393234
- "docker" 36306337343365626362636566366132616566383036386262623363633333393065616134633039
- "systemd-journal" 37613736663538353966353662363034366163333164363538646462333464636238346462626534
packages: 63363461343130393739373962653766353030313762336535613162323834393766613565303133
- "sudo" 32343735613661613534356366633763383034383362333739623464393638393636666463313134
- "curl" 35333439373361643238636362343635303732613334633137363035306131393430316638353938
- "wget" 61623561303861656665626135643766366234346636366162346262353239646631383934666562
- "mc" 39616265356534626339613531633436623232313237643964343735616638363734393138303762
- "nano" 66316538616137663630356465646261666163616165663738336262663233323166313865646561
- "tar" 61316431353331623535376338383961393037646632643430653435396461613338666363646439
- "gzip" 35646634393633303838373734353733316137666464356633623966303535323963653739636633
services: 35643932333439303337333939383935663632343734343535396233303037326461666330383238
- "ssh" 37313261313731663261373832313235613539376437653465646432663137353963643632323164
sudoers_path: "/etc/sudoers.d" 34366266633264363131303133386462373630323032373037643065613931633862313232623534
ssh_config_path: "/etc/ssh/sshd_config" 31353664343430353537333030336633376362646136353632663635383036633733666636323134
astra: 36376233383232393461656461323861333366626131326635333865663332663835326264386337
package_manager: "apt" 66313030666463333339393830333962663932366238366336393132656132396261333939363262
user_management: "useradd" 65373362633861643239336537303261323634396331663933323639386265623261313463303939
group_management: "groupadd" 61663030633738663938666465343439623262636635373235303362633036363163646632363763
sudo_group: "sudo" 66643437383330653631383966376139616662626439643265386366656261393961393934373339
additional_groups: 34393961393438636262636561353936366166613665393663656634366433303261643834613266
- "sudo" 32346435613330343331613666643863336335616434643633393762336336663665376430643133
- "docker" 39336466383639363430333839326164613963613334616339333134306331333630653637613535
- "systemd-journal" 34346435623262633761633466313066353931306537306636663264396265373563336462643266
packages: 65653861383133316361376365366333346535643264316266666633613632336265373664313036
- "sudo" 62333563353131383236356661363366303263666536353762643634383132623136386666353236
- "curl" 63366463353835666135643034656363303331396263326630643964623162333630663737623138
- "wget" 65663031386438393265616132363438326565396636383130643563313433323466623138323961
- "mc" 31303730353766383466636665623939653431383264356635323236396366623764323537356537
- "nano" 66666132663037336662373732326134623938656438356236616431353930646530313036363032
- "tar" 62636262613739366432323930633838616261346364303637613364343061613662316635623965
- "gzip" 31646432373437373363646165386564356366316438356437343633383434333631316331373035
services: 33396338303539356465613231363863313066396532383139313066373561643566396232653962
- "ssh" 39373164396437643138386531383965663863333666323961343265323961353535386134653861
sudoers_path: "/etc/sudoers.d" 62343535303934346336333535663131376232383962303838616164613864333339346664353337
ssh_config_path: "/etc/ssh/sshd_config" 37383566383263613639383939626235323963363737383932653235663335396131383037333331
redos: 32633062373838623265623033386437613534343433366232396266303535316333636530366134
package_manager: "yum" 36373336663064316439343332376533656437626565616461333534353035633236333861616464
user_management: "useradd" 66363033383339306465656137623435323962636632663338666235613036353831393131376330
group_management: "groupadd" 33666237373536643135323133383331306662333262383736626330313866653235326564326232
sudo_group: "wheel" 31313736626536396438636262373263313339623966396437323038333233356530613739343532
additional_groups: 37306463623532383139333433663863326162656538343832396236363661633536386561663832
- "wheel" 34343062326163306435663632346531663061383435616533646564363463303530336133313664
- "docker" 61653238623463613966363462643961323833633964616133333239653936636362656131356634
- "systemd-journal" 37303564666564323661373266356663663430363263323238656666623539656436373638346130
packages: 39303562613232326438623836393630346130313732333132356334383735363534333139373432
- "sudo" 66653637313464613939306632643662323232303634626439343032356666623838643737636635
- "curl" 34346238633563636433666562353834303861323631303539663361326131356337616335333238
- "wget" 36656437336630346333323661376362663364383137356466613465363730643631636364663535
- "mc" 38313930396532393033356630616134333836616638383536333334333235353761353834353134
- "nano" 31646136316233343637366136363838306233356162643961313633653138383038343230343864
- "tar" 64623432326533663834316631343061336332636361306232633764326438373462376561613234
- "gzip" 31343938636333646331613462646335306263623435333764343163326133366266393739323165
services: 64383430643236636139393166333235386262643533306166333237646566636231383933376634
- "sshd" 66316163663739346633353736363032653839303064313439613835656263336465306237313433
sudoers_path: "/etc/sudoers.d" 34386434616363306337343239636633383831366665393838326437313131633133356131613063
ssh_config_path: "/etc/ssh/sshd_config" 33316232616236653064646463653766626635333135393030643831643464633862326336383338
altlinux: # Alt Linux определяется как altlinux 65666164306432343037373435326534313364326431303332626163646536663565386638653838
package_manager: "apt" 38306433643938303664663761353330393361303262636230646639303738656465646636393962
user_management: "useradd" 63646166306461666236313337313733643431613038376531366535656661613930623063353262
group_management: "groupadd" 34643732303762633236653439613965666665636663633436383939346161616266326530366162
sudo_group: "sudo" 35373632316536646461623961396164346434616433313265383939626361383530353461623164
additional_groups: 32313637343562623936376639366366636634643632313338613865616362373063326162636462
- "sudo" 34376236616630626235393235303234376663613035333237383632646535333061663964646439
- "docker" 36653763653032616166313463323230643362616166363465306436316665643133333834343564
- "systemd-journal" 66316435326533626463303739636463303764393038333733343061333262636166326139333262
packages: 64633638336464396665393561336262636233616535663436373532366336356138353934646439
- "sudo" 35346230356366386635393463663339613464313366656439663936356532643230353231393730
- "curl" 66363465356365383337666331356266633339616433363461623163373562316237313761363033
- "wget" 62626665623137323637626239383938636265616263313233653239653364373066393435333066
- "mc" 33363236383463316262616134303638353761316232356530323130366231366439326330316561
- "nano" 33383732306436616634303461653238326163623530663535666531656165663439316137303836
- "tar" 62643861666432373231323332306336393233643538643230353439346437363537366635303564
- "gzip" 63313934373665346465326263366532643966373537343631356563316361653430663233633835
services: 36353931393761336466636435386166646433333062346262346662353665623230336134303836
- "ssh" 66623931373930613863633632633438336461623639663666373530353232646564643665313463
sudoers_path: "/etc/sudoers.d" 36376135613061613930626635363264363663623339396134633638646531343164346535613239
ssh_config_path: "/etc/ssh/sshd_config" 36343338656531336564306430396364383661303739626664623233656265363930633339393764
alt: 38346536623434353361363865633637386466316638353834346563373963393332623837323131
package_manager: "apt" 33336563313163386236666538366663393530636339653635353466383764616236373864363863
user_management: "useradd" 66643939646535373339653438323538303362336139376466313665366266303331393639373934
group_management: "groupadd" 63323563363638323937633332643363303233393737653533336165343832396336376566343638
sudo_group: "sudo" 31306635656231393930396131393831623039353439633464343533633836613762653437643463
additional_groups: 33363937636635386531643037303531313238636633356465356639306134303739626338343838
- "sudo" 32663939663035643037376161353231626666303832633436356139653465613631626165383238
- "docker" 66316666373435343736373130386330356133663939656537333665616539656131393536636466
- "systemd-journal" 61353064643461313235393434663362326564666161333130653631306634313362306561633336
packages: 32363533656237356566356261336666373566346134326662393566316131656532353262316162
- "sudo" 65663961616463646631646339323130303335343635656261613665623635626564396431616330
- "curl" 31323661386162316666653563313237656431363863323638353136366139616139373731326339
- "wget" 36343232316561386335353137383539666432386531323261386338383865613937646633346562
- "mc" 35646330383561303039363763313436666234343735386235373439333565643431313931663933
- "nano" 30346262383337663763633433363932383332373634653931313936386531373737373065633136
- "tar" 36356633623932656538306530656435663466613231323434306666303231356637346232323935
- "gzip" 33336464633735353366666436656637373233333733343934393935333132386462396461633562
services: 38356361663362646364643234383736656133353762653766303035303062653830316565323537
- "ssh" 36633363393862623039623439343334656162326134336462343738323737316633646265336561
sudoers_path: "/etc/sudoers.d" 66653864643937346463623735363762666337386634623731636435323762383938316135343331
ssh_config_path: "/etc/ssh/sshd_config" 39373633303261353161396533613936323233323766646135396539376461353335633531366635
66393763363862616134326330376436373437623861383036333135353365333534333832383937
# Получение конфигурации для текущей ОС 33616331366663646234306338386535313132323465376663616637646333613335313236663531
devops_current_config: "{{ devops_russian_os_config[devops_distribution] | default(devops_os_config[devops_os_family]) }}" 32616463393066663838383732333666366366626638663930343662663962643737353163666464
61306335326436636465623061366331623966613435353132623539383138626164313530343538
# Переменные для работы с пакетами 31366466316138633536636138633635373862393337326662393238623463303731346230393838
devops_package_manager_cmd: "{{ devops_current_config.package_manager }}" 63303465306631343932373837303263353663626161633132353861393936323332623161313330
devops_user_cmd: "{{ devops_current_config.user_management }}" 62653035316635396661343338326435333036333065303466636638306163333935373138303634
devops_group_cmd: "{{ devops_current_config.group_management }}" 37303837343431336135356266613936356335666630376630353832303464393637343161323331
devops_sudo_group: "{{ devops_current_config.sudo_group }}" 62373165643537353363323436373966366236623134313163633737613236343466353361306433
devops_packages_to_install: "{{ devops_current_config.packages }}" 36326431303030656432666438613135373034616631306433613330376230613165333633613533
devops_services_to_enable: "{{ devops_current_config.services }}" 62613662326663316465376538386261653565653730333165323335663132316265653665303962
devops_sudoers_path: "{{ devops_current_config.sudoers_path }}" 31376439323432373663353762366563636162613663303630616664363663386332383663373862
devops_ssh_config_path: "{{ devops_current_config.ssh_config_path }}" 33383063363465376137613630353039633232663831623864333961383831363931326337313664
39376434373230656235666430326665353731656635656562346461636266303538666236653464
# Дополнительные группы для пользователя 33646233383166396433373366366339636637636433323637643836623861633962346432616561
devops_final_additional_groups: "{{ devops_current_config.additional_groups }}" 35326234636633623761306438613731376634616535623135393539396130326434393137333665
38333032373133346661306438356564363430323333373862313238306638633964353732326335
# Настройки для проверки системы 62353966356663383330663434346532636563383534316234636439333736616462376230346462
devops_system_checks: 36306566633636393230383865343130623336303938623166666338613662393063326439336333
- name: "check_user_exists" 65623138326265333831373336373433323066306161383230336339333263326231376633316561
command: "id {{ devops_user }}" 30303731393837393037626537326262653933363461636433353732383534643764313533356466
register: "devops_user_check" 30383033663261323564326131343732346132363166323731623064323635653136646433666165
32343534616431666135646236363431383463663735343039353265633564643733356631653238
- name: "check_ssh_key_exists" 66643839653437373736333033663937653165363066613365336431366366386264613430393137
stat: 65393537316565396664303135346334376364613165326534376364653832316634343735333764
path: "{{ devops_ssh_authorized_keys }}" 34643364303238656232623164663664656165623461653131646638333462626337333634623231
register: "devops_ssh_key_check" 64323230376339306165646263373462336365346461353162666462633638383462313037666532
65363765373863323231353439333437623665636238336239633135366333326632623938333562
- name: "check_sudoers_exists" 39343735656563393637346632636236373663623133663462616238303962643937313133636131
stat: 66626661623163313231306436323339356239666530373038353935333261663963666331303163
path: "{{ devops_sudoers_file }}" 34663139313962383732346131313938666130343038663739613166653865623335646534313230
register: "devops_sudoers_check" 31306437636337616262356464656630623638343663353433393530353233316136376266623039
32363565643364663635623131353038383831383966343865333466353861303232616562366662
33663533633530383933343633656334646239393433643039376330636335636666613335353238
# Настройки для логирования 39333930613265626639346362353163633835633161306433306362636563616638653036346630
devops_log_config: 35353636613136363566356539313731386535626361306238643335656130613536653762366637
level: "{{ devops_log_level }}" 64346138323364343138376164636536613866663235393633663566376339643334386637666639
file: "{{ devops_log_file }}" 39373861666632323137356333643836626463323732346665663365616437333361353139303365
format: "%(asctime)s - %(name)s - %(levelname)s - %(message)s" 36363861646662346638393764353531376639383133666463356138663665363135363930373563
max_size: "10MB" 33663738376537613334313531623131363866613063616437653931386130366536623537623030
backup_count: 5 39333161646565313632303632306432376566663334316333303665626330383564666538666537
35663066656636313161616632626337616265383530643462373762643964626230646166656238
# Настройки для уведомлений 37383131333432343131636464333035363165326637356233356433636234333536323066316137
devops_notification_config: 66366135383238313764373664623431643837333561393738383861666263623665396165393532
success_message: "Пользователь {{ devops_user }} успешно настроен" 34663130656636323735623239623661373132333834303164386231633466356632663064356431
failure_message: "Ошибка при настройке пользователя {{ devops_user }}" 62613261636362396637646461663637376534346234363066333564376466356438616236373962
ssh_message: "SSH ключ для пользователя {{ devops_user }} настроен" 66386235333239623835376566366533313861393931653838343834326437336334326561343363
sudo_message: "Sudo права для пользователя {{ devops_user }} настроены" 32323334623336363338373635393031376363626432393463306537376363643261646664633335
65623235316462656538306336353936376536343261643637366365616161303335356164303235
# ============================================================================= 65656538353234613635333935663636393631666431633236383766373035623239356363343465
# СЕКРЕТНЫЕ ПЕРЕМЕННЫЕ 32613139393432653436666563346235323966393433626166653635613761313438613230643233
# ============================================================================= 64333736303934343731653839656266353462356662313038663638633538313836346139313461
# Пароль для пользователя devops 62666437323561363938393030653533623564623332636563336233316336616266333866363336
vault_devops_password: "123123" 30363734646463663833393535393631393139663330343836323834376162303164333762323935
66643761356264346664353436613962353139303736656361336331393138653033623666303638
# SSH публичный ключ для пользователя devops 61363562323965366132366161623264663535643962633763396364303763636438353562323838
vault_devops_ssh_public_key: | 61643133366330333163303064383831656461383132636231646663626138626639333065636564
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDBjzRt/b5Xe/tgQS2rvOBXOSBq1hychcnbz6G4m9Ps6hQXCxLA0hcrzPIRGazeWEslqsBynSm4fVJC6zAnExEd7KsNxS5gsMxmcHsghuU6/IA62tP8w8tXKEWaCGMQyfcUO/MIrdEjAg8txl3FIxdlcYwBTLW9nJggOmUn9w1YOA6ECNBDUbTwZC62yomJhQoAK0W+uVkKSLTqRIvd0oZJEF+0dtzBrhhe7cjR6fuoLpkB1/Q9bQImVfAxEiiExhFWFMxcyf4SGxpmsbKI4rJ3eBvsMmhrX76p1bYX4fKGiBaqNyXqThYWYybXfDfaITQR87SIrVt4U4NzS79ZFfQ142VPs+YISiy/+/VKZ1NjHo1fRZJSqBtsWJCsvtuM6C2+dRZ0JqwwMlHKLNhmerYMLJMQxkxdB5jRxafC+3T0aFNIsFIa7MdC8i3WQBk5z5huY5pslkPWnmKTfCi3gLjWNhfW9xEgKAww6hGrZR/zlQXZQrmQ2LGspzXFngd9tmk= linux@key 38303031326233343433366134656233373137666533383464633834376564376136363034373065
36326434613637333464396333393734666238623932663835333034653239636136653038373437
36313037373939653830643565343631636166663162323236353866636339613234616233623064
35643135663139353333623463666264336466636261646364323438653165383163646633386664
34643066626332313538363031643532656135366662333234393332336630336437656434393532
66346231393636393638653833353730616339643562303639353435303133623930613465376462
63333537353130653665323033303131373566356433613332353333636436636533366431616131
33333935303430373764356265393439383062396365653332386238346636386233376136656536
61613062393431666130393166313337643935393534623333366533333530633338343666383630
66333666383438663532376236336364303831653465313566666437303335363164663964303637
32333537626165663564313164623730386462636335363934393336306364313239373033363233
64313036393235336630636562643230303764343561326363303163343137663835303765383934
66613536376461633238373263646632326462326565616239313035623334656133383835653537
31646366356261343537373330643166353965303636393630623664346435346332313565363766
35303131643335303037366433303861643966336166346666393561323634373635623437643966
64376338396466383063373363323765386633623536316165623862353234306464353963323163
65363862653131313166326130323131643234613139376565343336303566313463376632653937
66316235386236316533346633333966363062343461633932346135663065643331663833313532
66343734353231333138386339323632653530306361346362346638363462366430396237393763
66303466643731393537656434356439343830633531383361366638353861653731313636356664
39616638313363303136616632376632333839376537313061636535316238326364373534663237
36333834373134353337623662393161376533336163383734303135396362343736653337313937
30616438623539386266643737373139393033373331656134623134316663356161313934383536
37333932643533366139633535323033396537363339613364666435383036646434643937353262
33343035303739636565333939386638393034306234363631313237343064333836346438303465
38323564646233323462313836616162313639326234396666353261383735336438303663323562
38346565656138373364316135373066303963396566623938373936366332616637366535616236
33363133323633353264313361346333303364313630376435613866633630326630643831666532
38353762393963316132353138323563396163356462653061356238343463366164646536633532
62373530376538656535616136333033363661343535353264363830393033613631366562363464
64613836613835366361623965666436336562393261623531646534316465396661303866303237
66376461343737336362333132623737353836633963663838323237666165316539353030323131
61623131303066666366386565323063663630613564623834656636636462343730306130643763
31333165303930346565626134353163333138323735613838323834626362393261393837306637
65303761636639636263623635353834643139316433646631373061353834303035353931363661
39623962353062373231636638306638636632336636366663303362616366626466316265343239
38326235373333663236646465313865373639363539373735643139343934346166633135643863
34316436343461663338333634643962313166313135373765366464613261313737653437646563
39363865636239653332653133313137303637303966323330343131663862633565396364616163
31353530646663383036613234383866323335663361636566363137613534336263623535313035
62356664313239363631623861643138373734383639363339386631356634636464353436633234
38306230373432653736313366386333313761356636623861326235323237366361626164646337
38643536636332386538656630356633333964613639646536623731643465373839323732363239
36653263373863346264343162626534363137666236393731306534393035643837383739343333
37313063636635393938626237663162373131313466393432626332373532393939366430346536
34613438393664646266343435313531373966653439326266633165623334613238363561353963
30623535396261653434353562653362356365663833663234343634646364323866346238663062
35383861613736343132376561656466386539323363613964666266303235373136666634336463
66636465393065313866653733343066353936383762623365626661353737623361336463653730
65323363386433366536623337383337646234313064393361346665323832323239366462353935
62343165626164666131333732653130363364353161366264313536353062313837303733313234
66666231623761313234643461373935366466656565376561613964343638313234326161366638
66653733343233623738363733666632396534633332353637356563323631663661383466313565
37643239366664393637333136663832373036363231623064613464386162346330376363613063
63653062666561383961353533393366663831393936393032663962383135663737616437666562
36623966623566613432666639633063656561666161376330393633326264373036376534363931
65336432313765646133383265383032363439616363623835343065616265353830306538366236
36306465386261376164356361633732636236343630633063313135333437306137363033386466
34363633663232323437376132393235646430623863303538353533383664373336653764363265
31363730303630386232623832666262346136313465346264376232376163393666353465363337
35636161616531613035326164383034353134666562356666313031613466663331343431376564
61383566353239643438303666613365383931656633353534353662366263646439333937343639
30343938353436376136383633313130643562643232663039623431613663363965653366623965
30656531643164623930396261646462336262393864336162376338353061363135633666316430
37346237373765373430663231303134303961336164343331316432363131376433633130383537
63633462653064376262663563343035613930393465363638353333636362626363643835313662
63306361666466383962623665633734363363343265663065626333616166653635373962303531
38656336383438653232666538323434653930343938626532356638363434376637623832303434
37633439393632653662626165356266303732326431623235373661353564323062363932383863
62313333336335616436653131323934656530353165376363646462356662623134313165366262
35363162636166636336616531633035343264386231656434353939666232333464303632313634
62616336633466343733613731633566396564393634336165313162396531366535336138373738
35303730363262643062363231333031323037656138356633383936316366393836613633336464
31623765613635633666646232633663383834393730363566396561303962356633656364376663
66376331303435376637633134616661633362336231613665623165613963366130383133303737
35633462376464383235383662653335616231316365356361376362333235363136323030353433
36306162306466623763666434346432383966643134353639646565346665366236616362376465
30656531343466646234323137666230623563323337396464356366656639343035323930626465
64636638333664393463656466383563313432636164323638666637373239393531396334646564
35653163613064333839643862666662336339343633326335343465343033626438393062363133
39646464396630643135333361646464363933633532623832303533663037653863613662366438
32336136306564313565306362373938373933636630313730376436653231663532333234393335
30386232623862666666623665333065646236626139653364656366353961353936363837363862
34643139373633663764383830663864643134613864326537333364326362646132636163626338
30313638373838316533336161393430346265656462633634333737663737306331373738626130
30366535383938303239626237336336613338303733333962393564373731633732663236316436
39636338373463613039643935343063323363636137666134636262366232666264613363623831
33363330303063616665376433343161653138613032396330336536343734336232396435316635
66323265646466343962666233623831316134373038623032373865646165353932623861326265
39383337633430353233666535363761376437376362393961323961353335633561393466656433
66306538343235366231636262613331656434653266393538646264343036303935663538363239
34373565366231373464373638653464633465303462393232303137356563393163663036303663
30386532303561323930386531356233633635333033623737616365636639303633336434653538
30646434346165386333383730336364373431383331333930313538363961623966346139643635
65343336363334396233616532383630333163653165623834363937333066333565326665333439
65346632623739393231613731366338316164343333306132656564666137633361643265613462
66356561326133363166313163366635643461353362326334663736356336373830306137383938
37366462323863313964383434306566646334303533336230666662343039343362353631653362
39333565333730383463323665636436656332393538363638303139663834326132623866643738
34343235356430363663383235393065663139336565383732613531636362373338343137336362
36313136373863653234303361336330663539333362616365346539353939383536623535653562
36386137653663396238353734633065663134333230383462326138333366323339303939363639
63376230643533653732303333373161366366383337653039323165633035336230373463343064
38613564363534356161623935636239313830623962356635623237313533663937653638323038
39363165663264363161623463356532326334353465303531383130666631373239383135386134
39343935323738346562653233663537373532383637363739323235643538316462626363333435
38616530373064316237373236663336653834396266303161386464663939633934306335383936
61653732346666626466343736393638663433323363656165633834356131643836633639306637
35653862643536376566393730356161393631666431656132643961333562666137303332643539
38336562613566333930353365376133666166633739386335633132343835373938363566393564
31393838326231323034663633316361643566613637613437333366623133346261653165383366
39373637313162363834356665333333373034333136323139653938626432333935363835373563
64666237663736326134623636313837386362393433666538356537393836386161373565323466
37393631326265366333396363626665363264373736386462373465663835646438613066616638
38326663623163366664386561326463656337646665633234306164366566616662303339353963
32303037653563643735653533336636633335653466656132626335333737633030653430623639
36323434643930393266313430353364363439663333373233393364666237393963373631636561
39613431353435326266623931666532373636343362663633633664303262656233353635323530
39376263356461643564373432623364323463623262666161643264626338653264633539616364
64383462646337393861363037313062376337373962653039613563366431666436636166383865
31393833343930636663666166323137646434653764316434306531653330306531393834386231
64386336323631393532303636633762383965636231353332313737323339353261303164383039
30393461636534306530343736663633363639383435373364626638643661613433613235356236
32613139633933636431656637666264313834633065373237353063616131386264353564316666
3261

View File

@@ -0,0 +1,6 @@
$ANSIBLE_VAULT;1.1;AES256
33373961633665353432306365356135666664303432366332376532333065623062326361303335
3463653435363235626330656263366161393662353736630a363130656466373466393337646532
61323039366638313030363838303030303663383462323139623237643062363138313636643861
6536353861343831340a353065343063323933316238316365356534383566373336363530313230
6165

File diff suppressed because it is too large Load Diff