User Tools

Site Tools


gpo_для_linux

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revision Both sides next revision
gpo_для_linux [2023/05/02 08:50]
val
gpo_для_linux [2023/05/02 10:02]
val
Line 21: Line 21:
 По поводу ролей, рассмотрим описанные в предыдущих статьях (см. ссылки):​ По поводу ролей, рассмотрим описанные в предыдущих статьях (см. ссылки):​
  
-1. [[https://​habr.com/​ru/​articles/​718632/​|Подключение]] к [[https://​habr.com/​ru/​articles/​732290/​|домену]]+1. [[https://​habr.com/​ru/​articles/​718632/​|Подключение к домену]]
  
 2. Настройка на использование [[https://​habr.com/​ru/​articles/​732290/​|корпоративного прокси]] 2. Настройка на использование [[https://​habr.com/​ru/​articles/​732290/​|корпоративного прокси]]
Line 91: Line 91:
 </​code>​ </​code>​
  
-Создаем роль, настраивающую использование [[https://​habr.com/​ru/​articles/​732290/​|корпоративного прокси]] (наверное, ​самую простую ​в этой статье)+Создаем роль, настраивающую использование [[https://​habr.com/​ru/​articles/​732290/​|корпоративного прокси]] (самую простую ​из трех)
  
 <​code>​ <​code>​
Line 147: Line 147:
 </​code>​ </​code>​
  
-После перезагрузки,​ должна появиться возможность подключаться любым доменным пользователем,​ браузер должен работать через authproxy, а в разделе "​Интернет"​ должна появиться иконка "​Помощь"​+После перезагрузки,​ должна появиться возможность подключаться любым доменным пользователем,​ браузер должен работать через authproxy, а в меню графической оболочки, ​в разделе "​Интернет"​должна появиться иконка "​Помощь"​.
  
-Для доступа к этим ролям с других рабочих станций,​ разместим все в корпоративном GitLab ​(если его еще нет, см. 3-й шаг из [[https://​habr.com/​ru/​articles/​716454/​|этой статьи]].+Для доступа к этим ролям с других рабочих станций,​ разместим все в корпоративном GitLabесли его еще нет, см. 3-й шаг из [[https://​habr.com/​ru/​articles/​716454/​|этой статьи]]. ​В дальнейшем,​ подразумевается имя GitLab сервера - gitlab.corp.ru и учетная запись владельца проекта - student
  
-Создаем публичный проект без readme с названием ansible-pull-gpo (см. 4-й шаг из [[https://​habr.com/​ru/​articles/​716454/​|той же статьи]]) и выполняем команды из подсказок проекта ​внутри каталога ansible-pull-gpo, предварительно установив ​на рабочую станцию для разработки и тестирования ​утилиту git:+Создаем публичный проект без readme с названием ansible-pull-gpo (см. 4-й шаг из [[https://​habr.com/​ru/​articles/​716454/​|той же статьи]]) и выполняем ​внутри каталога ansible-pull-gpo ​команды из подсказок ​нового ​проекта,​ предварительно установив утилиту git:
  
 <​code>​ <​code>​
Line 158: Line 158:
 client1:~# cd ansible-pull-gpo/​ client1:~# cd ansible-pull-gpo/​
  
-...+client1:​~/​ansible-pull-gpo#​ git config --global user.email "​student@corp.ru" 
 + 
 +client1:​~/​ansible-pull-gpo#​ git init --initial-branch=main 
 + 
 +client1:​~/​ansible-pull-gpo#​ git remote add origin http://​gitlab.corp.ru/​student/​ansible-pull-gpo.git 
 + 
 +client1:​~/​ansible-pull-gpo#​ git add . 
 + 
 +client1:​~/​ansible-pull-gpo#​ commit -m "​Initial commit"​ 
 + 
 +client1:​~/​ansible-pull-gpo#​ push -u origin main
 </​code>​ </​code>​
  
-Для сдачи в эксплуатацию следующей системы достаточно выполнить на ней команды (подразумевается имя GitLab сервера - gitlab.corp.ru ​и учетная запись владельца проекта - student):+Для сдачи в эксплуатацию следующей системы достаточно выполнить на ней команды (вот он - ansible-pull в действии ​:)
  
 <​code>​ <​code>​
Line 171: Line 181:
 </​code>​ </​code>​
  
-Инструкцию ansible-pull можно прописать в cron, что бы обновления конфигурации загружались периодически автоматически,​ но еще лучше, добавить в проект файлы, облегчающие процесс ввода в эксплуатацию новых рабочих станций.+Инструкцию ansible-pull можно прописать в cron, что бы обновления конфигурации загружались периодически,​ но еще лучше, добавить в проект файлы, облегчающие процесс ввода в эксплуатацию новых рабочих станций:
  
 Скрипт start.sh будет устанавливать необходимое ПО и прописывать ansible-pull в cron (каждые 2 часа со случайной задержкой и после перезагрузки),​ добавляя возможность указывать (например,​ тестовую) ветку проекта. Вывод команды ansible-pull будет передаваться в syslog Скрипт start.sh будет устанавливать необходимое ПО и прописывать ansible-pull в cron (каждые 2 часа со случайной задержкой и после перезагрузки),​ добавляя возможность указывать (например,​ тестовую) ветку проекта. Вывод команды ansible-pull будет передаваться в syslog
Line 207: Line 217:
 </​code>​ </​code>​
  
-После синхронизации ​(push) ​изменений в репозиториипроцесс подключения следующей рабочей станции выглядит как на титульном скриншоте,​ а именно,​ после базовой инсталляции системы,​ инженер подключается локальной учетной записью,​ открывает браузер,​ находит (через Explore в GitLab) проект и копирует из readme.md две команды в терминал. После перезагрузки рабочей станции можно наблюдать процесс применения конфигурации:​+После синхронизации изменений в репозитории 
 + 
 +<​code>​ 
 +client1:​~/​ansible-pull-gpo#​ git --no-optional-locks status | grep '​modified\|deleted\|new file\|renamed'​ | git commit -a -F - 
 + 
 +client1:​~/​ansible-pull-gpo#​ push -u origin main 
 +</​code>​ 
 + 
 +процесс подключения следующей рабочей станции выглядит как на титульном скриншоте,​ а именно,​ после базовой инсталляции системы,​ инженер подключается локальной учетной записью,​ открывает браузер,​ находит (через Explore в GitLab) проект ​ansible-pull-gpo ​и копирует из readme.md две команды в терминал. После перезагрузки рабочей станции можно наблюдать процесс применения конфигурации:​
  
 <​code>​ <​code>​
Line 213: Line 231:
 </​code>​ </​code>​
  
-Остается рассказать про профили систем. Например,​ домашние компьютеры сотрудников не нужно включать в домен, но иконка "​Помощь/​Help"​ для разрешения удаленного подключения инженера может очень пригодиться. Для этого опишем профиль - просто еще один плейбук,​ аналогичный local.yml с названием home-comp.yml (в реальности, ​лучше использовать отдельный каталог для профилей)+Остается рассказать про профили систем. Например,​ домашние компьютеры сотрудников не нужно включать в домен, но иконка "​Помощь/​Help"​ для разрешения удаленного подключения инженера может очень пригодиться. Для этого опишем профиль - просто еще один плейбук,​ аналогичный local.yml с названием home-comp.yml (в реальности,​ удобнее использовать отдельный каталог для профилей)
  
 <​code>​ <​code>​
Line 223: Line 241:
 </​code>​ </​code>​
  
-Далее, уточняем hostname компьютера сотрудника (например,​ petrov-home) и создаем одноименный линк на созданный плейбук (в локальной сети ​hostname ​назначается по определенному правилу,​ которое исключает возможность совпадений)+Далее, уточняем hostname компьютера сотрудника (например,​ petrov-home) и создаем одноименный линк на созданный плейбук (hostname должны быть уникальны, компьютерам предприятия они ​назначается по определенному правилу,​ которое исключает возможность совпадений)
  
 <​code>​ <​code>​
 client1:​~/​ansible-pull-gpo#​ ln -s home-comp.yml petrov-home.yml client1:​~/​ansible-pull-gpo#​ ln -s home-comp.yml petrov-home.yml
 +
 +client1:​~/​ansible-pull-gpo#​ git --no-optional-locks status | grep '​modified\|deleted\|new file\|renamed'​ | git commit -a -F -
 +
 +client1:​~/​ansible-pull-gpo#​ push -u origin main
 </​code>​ </​code>​
  
-После ​синхронизации изменений в репозитории, ​сотруднику оправляется ссылка на видео инструкцию ([[https://​youtu.be/​Y4RzavhVwxY?​t=3653|похожую на эту]]) и он самостоятельно подключает свой компьютер к нашей системе управления. ​+После ​этого сотруднику оправляется ссылка на видео инструкцию ([[https://​youtu.be/​Y4RzavhVwxY?​t=3653|похожую на эту]]) и он самостоятельно подключает свой компьютер к нашей системе управления. ​В дальнейшем,​ можно создать в проекте новую роль, например - openvpn, добавить ее к плейбуку home-comp.yml и она будет выполнена (в течении 2-х часов или после загрузки) на всех компьютерах,​ hostname которых мы "​прилинковали"​ к файлу home-comp.yml
  
-Вот такое решение "из подручных материалов"​. Мы его активно используем,​ добавляя ​роли, по необходимости (в том числе, настройку 1С, установку офиса Р7 и прочее) ​ +Вот такое решение "из подручных материалов"​. Мы его активно используем,​ добавляя,​ по необходимости, новые роли (в том числе, настройку 1С, установку офиса Р7 и прочее).
  
 Спасибо,​ что дочитали до конца, буду рад, если кому то пригодится и ответить на вопросы,​ а, так же, советам в комментариях! Спасибо,​ что дочитали до конца, буду рад, если кому то пригодится и ответить на вопросы,​ а, так же, советам в комментариях!
  
  
gpo_для_linux.txt · Last modified: 2023/06/02 16:08 by val