сөздөр
Биздин “достугубуз” эки жыл мурун башталган. Мен жаңы жумушка келдим, ал жерде мурунку админ бул программаны мага мурас катары калтырып кеткен. Интернеттен расмий документтерден башка эч нерсе таба алган жокмун. Азыр деле, эгер сиз Google'да "рулду" издесеңиз, 99% учурларда ал: кемелердин штурвалдары жана квадрокоптерлор пайда болот. Мен ага мамиле таба алдым. Бул программалык камсыздоонун коомчулугу жокко эсе болгондуктан, мен өз тажрыйбам менен бөлүшүүнү чечтим. Бул кимдир бирөө үчүн пайдалуу болот деп ойлойм.
Ошентип, Rudder
Rudder – бул системанын конфигурациясын автоматташтырууга жардам берген ачык булактуу аудит жана конфигурацияны башкаруу программасы. Ал ар бир акыркы колдонуучу үчүн агентти орнотуу принцибинде иштейт. Ыңгайлуу интерфейс аркылуу биз инфраструктурабыз бардык көрсөтүлгөн саясаттарга канчалык туура келерин көзөмөлдөй алабыз.
пайдалануунун
Төмөндө мен Rudderди эмне үчүн колдоном.
-
Файлдарды жана конфигурацияларды башкаруу: ./ssh/authorized_keys ; /etc/hosts ; iptables ; (анан сиздин фантазияңыз кайда баратат)
-
Орнотулган пакеттерди башкаруу: zabbix.agent же башка программалык камсыздоо
Сервер орнотуу
Жакында мен 5 версиясынан 6.1ге жаңырттым, баары жакшы болду. Төмөндө Deban/Ubuntu үчүн буйруктар бар, бирок колдоо да бар:
Сизди алаксытпаш үчүн орнотууну спойлерлерге жашырам.
Spoiler
Көз карандылык
rudder-server Java RE кеминде 8 версиясын талап кылат, аны стандарттуу репозиторийден орнотууга болот:
Орнотулганын текшерүү үчүн
java -version
корутунду болсо
-bash: java: command not found
анда орнотуу
apt install default-jre
Server
Ачкыч импорттоо
wget --quiet -O- "https://repository.rudder.io/apt/rudder_apt_key.pub" | sudo apt-key add -
Бул жерде басма өзү
pub 4096R/474A19E8 2011-12-15 Rudder Project (release key) <[email protected]>
Key fingerprint = 7C16 9817 7904 212D D58C B4D1 9322 C330 474A 19E8
Бизде акы төлөнүүчү жазылуу жок болгондуктан, биз төмөнкү репозиторийди кошобуз
echo "deb http://repository.rudder.io/apt/6.1/ $(lsb_release -cs) main" > /etc/apt/sources.list.d/rudder.list
Репозиторийлердин тизмесин жаңыртыңыз жана серверди орнотуңуз
apt update
apt install rudder-server-root
Колдонуучунун администраторун түзүү
rudder server create-user -u admin -p "Ваш Пароль"
Келечекте биз конфигурация аркылуу колдонуучуларды башкара алабыз
Бүттү, сервер даяр.
Server Tuning
Эми сиз агенттердин IP даректерин же бүтүндөй ички тармакты руль агентине кошушуңуз керек, биз коопсуздук саясатына көңүл бурабыз.
Орнотуулар -> Жалпы
"Тармак кошуу" талаасында даректи жана масканы xxxx/xx форматында киргизиңиз. Ички тармактын бардык даректеринен кирүүгө уруксат берүү үчүн (Албетте, бул тесттик тармак болуп саналбаса жана сиз NATтын артында турсаңыз) төмөнкүнү киргизиңиз: 0.0.0.0/0
Маанилүү - IP дарегин кошкондон кийин, "Өзгөртүүлөрдү сактоо" баскычын басууну унутпаңыз, антпесе эч нерсе сакталбайт.
порту
Серверде төмөнкү портторду ачыңыз
-
443 - tcp
-
5309 - tcp
-
514 - udp
Биз сервердин баштапкы орнотуусун иреттеп чыктык.
Агент орнотуу
Spoiler
Ачкыч кошуу
wget --quiet -O- "https://repository.rudder.io/apt/rudder_apt_key.pub" | sudo apt-key add -
Ачкыч манжа изи
pub 4096R/474A19E8 2011-12-15 Rudder Project (release key) <[email protected]>
Key fingerprint = 7C16 9817 7904 212D D58C B4D1 9322 C330 474A 19E8
Репозиторий кошуу
echo "deb http://repository.rudder.io/apt/6.1/ $(lsb_release -cs) main" > /etc/apt/sources.list.d/rudder.list
Агентти орнотуу
apt update
apt install rudder-agent
Агентти орнотуу
Биз агентке саясат серверинин IP дарегин көрсөтөбүз
rudder agent policy-server <rudder server ip or hostname> #Без скобок. Можно также использовать доменное имя
Төмөнкү буйрукту иштетүү менен биз серверге жаңы агент кошуу өтүнүчүн жөнөтөбүз, бир нече мүнөттөн кийин ал жаңы агенттердин тизмесинде пайда болот, мен кийинки бөлүмдө кантип кошууну түшүндүрөм
rudder agent inventory
Биз ошондой эле агентти баштоого мажбурлай алабыз жана ал суроону заматта жөнөтөт
rudder agent run
Биздин агент түзүлдү, уланталы.
Агенттерди кошуу
Кирүү
https://127.0.0.1/rudder/index.html
Сиздин агент "Жаңы түйүндөрдү кабыл алуу" бөлүмүндө пайда болот, кутучаны белгилеп, Кабыл алуу баскычын чыкылдатыңыз
Система сервердин шайкештигин текшергиче бир аз убакыт талап кылынат
Сервер топторун түзүү
Келгиле, топ түзөлү (бул дагы эле көңүл ачуу), иштеп чыгуучулар эмне үчүн мынчалык жийиркеничтүү топ түзүшкөнүн билбейм, бирок мен түшүнгөндөн башка жол жок. Түйүндү башкаруу -> Топтор бөлүмүнө өтүңүз жана Түзүүнү чыкылдатыңыз, статикалык топту жана атын тандаңыз.
Биз өзүбүзгө керектүү серверди атайын функциялар боюнча, мисалы, IP дареги боюнча чыпкалап, сактайбыз
Топ түзүлдү.
Эрежелерди орнотуу
Конфигурация саясаты → Эрежелерге өтүп, жаңы эреже түзүңүз
Мурда даярдалган топту кошуңуз (бул кийинчерээк жасалышы мүмкүн)
Жана биз жаңы директива түзөбүз
.ssh/authorized_keys үчүн ачык ачкычтарды кошуу үчүн директиваны түзөлү. Мен муну жаңы кызматкер кеткенде же кайра камсыздандыруу үчүн колдоном, мисалы, кимдир бирөө кокусунан менин ачкычымды кесип алса.
Конфигурация саясаты → Директивалар дегенге өтүңүз, сол жакта биз “Директива китепканасын” көрөбүз. “Алыстан кирүү → SSH ыйгарым укуктуу ачкычтарын” табыңыз, оң жактагы Директиваны түзүү баскычын чыкылдатыңыз
Биз колдонуучу тууралуу маалыматты киргизип, анын ачкычын кошобуз. Андан кийин, колдонмо саясатын тандаңыз
-
Глобалдык - Демейки саясат
-
Күчтүү - тандалган серверлерде аткаруу
-
Аудит - Аудит жүргүзүп, кайсы кардарларда ачкыч бар экенин айтат
Биздин эрежени сөзсүз көрсөтүңүз
Андан кийин сактаңыз жана бүттүңүз.
текшерүү
Ачкыч ийгиликтүү кошулду
Булочкалар
Агент сервер жөнүндө толук маалымат берет. Орнотулган пакеттердин, интерфейстердин, ачык порттордун жана башка көптөгөн нерселердин тизмеси, аларды төмөндөгү скриншоттон көрө аласыз
Сиз ошондой эле программалык камсыздоону бир гана Linux эмес, Windows да орнотуп, көзөмөлдөй аласыз, мен акыркысын текшерген жокмун, кереги жок болчу..
Автордон
Сиз суроо беришиңиз мүмкүн, эгер ансибль жана куурчак мурунтан эле ойлоп табылган болсо, эмне үчүн дөңгөлөктү кайра ойлоп табуу керек?
Мен жооп берем: Ansible кемчиликтери бар, мисалы, биз бул конфигурациянын азыр кандай абалда экенин, же сиз ролду же оюн китебин ишке киргизгениңиздеги тааныш кырдаалды жана каталар пайда болуп, серверге чыгып, эмнени көрө баштайсыз. пакет кайда жаңыртылган. А мен куурчак менен иштеген жокмун..
Руддердин кемчиликтери барбы? Көптөгөн.. Агенттер кулап түшүп, аларды кайра орнотууга же рулду кайра орнотуу буйругун колдонууга туура келет. (бирок, демек, мен муну 6-версияда көрө элекмин), натыйжада өтө татаал орнотуу жана логикасыз интерфейс пайда болду.
Артыкчылыктары барбы? Жана дагы көптөгөн артыкчылыктар бар: Белгилүү Ansibleден айырмаланып, бизде веб-интерфейс бар, анда биз колдонгон шайкештикти көрө аласыз. Мисалы, порттор дүйнөгө чыгып жатабы, брандмауэрдин абалы кандай, коопсуздук агенттери орнотулганбы же башка гаджеттер.
Бул программалык камсыздоо маалыматтык коопсуздук бөлүмү үчүн идеалдуу, анткени инфраструктуранын абалы ар дайым сиздин көз алдыңызда болот жана эгер эрежелердин кайсынысы кызыл түстө күйсө, анда бул серверге барууга негиз болуп саналат. Айткандай эле мен Руддерди 2 жылдан бери колдонуп келем, бир аз чексеңер жашоо жакшырат. Чоң инфраструктурадагы эң кыйын нерсе - сервердин кандай абалда экенин, июнь коопсуздук агенттерин орнотууну сагынганыңызды же iptables туура конфигурациялаганын эстей албайсыз, бирок руль бардык окуялардан кабардар болууга жардам берет. Билдирүү куралдуу дегенди билдирет! )
PS Мен ойлогондон алда канча көп болуп чыкты, пакеттерди кантип орнотууну сүрөттөбөйм, күтүлбөгөн жерден суранычтар түшсө, экинчи бөлүгүн жазам.
PSS Макала маалыматтык максатта, мен аны бөлүшүүнү чечтим, анткени Интернетте маалымат өтө аз. Балким, бул кимдир бирөө үчүн кызыктуу болот. Кайырлы кун, кымбатты достар)
жарнама катары
Эпикалык серверлер - аны
Source: www.habr.com