paunang salita
Nagsimula ang aming "pagkakaibigan" dalawang taon na ang nakararaan. Dumating ako sa isang bagong lugar ng trabaho, kung saan ang dating admin ay iniwan sa akin ang software na ito bilang isang mana. Wala akong mahanap sa Internet maliban sa opisyal na dokumentasyon. Kahit ngayon, kung mag-google ka ng "timon", sa 99% ng mga kaso ay lalabas ito ng: mga helm ng barko at quadcopter. Nakahanap ako ng approach sa kanya. Dahil ang komunidad ng software na ito ay bale-wala, nagpasya akong ibahagi ang aking karanasan at magsaliksik. Sa tingin ko ito ay magiging kapaki-pakinabang sa isang tao.
Kaya Rudder
Ang Rudder ay isang open source auditing at configuration management utility na tumutulong sa pag-automate ng system configuration. Gumagana ito sa prinsipyo ng pag-install ng ahente para sa bawat end user. Sa pamamagitan ng maginhawang interface, masusubaybayan namin kung gaano kasunod ang aming imprastraktura sa lahat ng tinukoy na patakaran.
Gamitin
Sa ibaba ay ililista ko kung para saan ang ginagamit kong Rudder.
-
Kontrol ng mga file at config: ./ssh/authorized_keys ; /etc/hosts ; iptables ; (at kung saan patungo ang iyong imahinasyon)
-
Kontrol ng mga naka-install na pakete: zabbix.agent o anumang iba pang software
Pag-install ng server
Kamakailan ay nag-update ako mula sa bersyon 5 hanggang 6.1, naging maayos ang lahat. Nasa ibaba ang mga utos para sa Deban/Ubuntu ngunit mayroon ding suporta:
Itatago ko ang pag-install sa mga spoiler para hindi ka makaabala.
Spoiler
Dependencies
rudder-server ay nangangailangan ng Java RE ng hindi bababa sa bersyon 8, maaaring mai-install mula sa karaniwang repositoryo:
Sinusuri upang makita kung ito ay naka-install
java -version
kung ang konklusyon
-bash: java: command not found
pagkatapos ay i-install
apt install default-jre
Server
Pag-import ng susi
wget --quiet -O- "https://repository.rudder.io/apt/rudder_apt_key.pub" | sudo apt-key add -
Narito ang print mismo
pub 4096R/474A19E8 2011-12-15 Rudder Project (release key) <[email protected]>
Key fingerprint = 7C16 9817 7904 212D D58C B4D1 9322 C330 474A 19E8
Dahil wala kaming bayad na subscription, idinaragdag namin ang sumusunod na repository
echo "deb http://repository.rudder.io/apt/6.1/ $(lsb_release -cs) main" > /etc/apt/sources.list.d/rudder.list
I-update ang listahan ng mga repositoryo at i-install ang server
apt update
apt install rudder-server-root
Lumikha ng user admin
rudder server create-user -u admin -p "ΠΠ°Ρ ΠΠ°ΡΠΎΠ»Ρ"
Sa hinaharap maaari naming pamahalaan ang mga gumagamit sa pamamagitan ng config
Iyon lang, handa na ang server.
Pag-tune ng Server
Ngayon ay kailangan mong idagdag ang mga IP address ng mga ahente o isang buong subnet sa rudder agent, nakatuon kami sa patakaran sa seguridad.
Mga Setting -> Pangkalahatan
Sa field na "Magdagdag ng network," ilagay ang address at mask sa format na xxxx/xx. Upang payagan ang pag-access mula sa lahat ng mga address ng panloob na network (Maliban kung siyempre ito ay isang pagsubok na network at ikaw ay nasa likod ng NAT) ilagay ang: 0.0.0.0/0
Mahalaga - pagkatapos idagdag ang ip address, huwag kalimutang i-click ang I-save ang mga pagbabago, kung hindi, walang mai-save.
Mga Port
Buksan ang mga sumusunod na port sa server
-
443 - tcp
-
5309 - tcp
-
514 - udp
Inayos namin ang paunang pag-setup ng server.
Pag-install ng Ahente
Spoiler
Pagdaragdag ng susi
wget --quiet -O- "https://repository.rudder.io/apt/rudder_apt_key.pub" | sudo apt-key add -
Key fingerprint
pub 4096R/474A19E8 2011-12-15 Rudder Project (release key) <[email protected]>
Key fingerprint = 7C16 9817 7904 212D D58C B4D1 9322 C330 474A 19E8
Pagdaragdag ng repositoryo
echo "deb http://repository.rudder.io/apt/6.1/ $(lsb_release -cs) main" > /etc/apt/sources.list.d/rudder.list
Pag-install ng ahente
apt update
apt install rudder-agent
Setup ng ahente
Ipinapahiwatig namin sa ahente ang IP address ng server ng patakaran
rudder agent policy-server <rudder server ip or hostname> #ΠΠ΅Π· ΡΠΊΠΎΠ±ΠΎΠΊ. ΠΠΎΠΆΠ½ΠΎ ΡΠ°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄ΠΎΠΌΠ΅Π½Π½ΠΎΠ΅ ΠΈΠΌΡ
Sa pamamagitan ng pagpapatakbo ng sumusunod na utos, magpapadala kami ng isang kahilingan upang magdagdag ng isang bagong ahente sa server, sa loob ng ilang minuto lilitaw ito sa listahan ng mga bagong ahente, ipapaliwanag ko kung paano magdagdag sa susunod na seksyon
rudder agent inventory
Maaari rin nating pilitin ang ahente na magsimula at agad nitong ipapadala ang kahilingan
rudder agent run
Naka-set up na ang ahente natin, magpatuloy tayo.
Pagdaragdag ng mga ahente
Mag log in
https://127.0.0.1/rudder/index.html
Lalabas ang iyong ahente sa seksyong βTanggapin ang mga bagong node,β lagyan ng check ang kahon at i-click ang Tanggapin
Dapat tumagal ng kaunting oras hanggang sa masuri ng system ang server para sa pagsunod
Paglikha ng mga pangkat ng server
Gumawa tayo ng isang grupo (masaya pa rin), walang ideya kung bakit ginawa ng mga developer ang karumal-dumal na pagbuo ng grupo, ngunit sa pagkakaintindi ko, walang ibang paraan. Pumunta sa Node management -> Groups section at mag-click sa Create, pumili ng static na grupo at pangalan.
Sinasala namin ang server na kailangan namin sa pamamagitan ng mga espesyal na tampok, halimbawa, sa pamamagitan ng ip address, at i-save
Naka-set up na ang grupo.
Pagse-set up ng mga panuntunan
Pumunta sa Configuration policy β Rules at gumawa ng bagong panuntunan
Idagdag ang pangkat na inihanda nang mas maaga (maaari itong gawin sa ibang pagkakataon)
At bumuo kami ng bagong direktiba
Gumawa tayo ng direktiba para sa pagdaragdag ng mga pampublikong key sa .ssh/authorized_keys. Ginagamit ko ito kapag umalis ang isang bagong empleyado, o para sa reinsurance, halimbawa, kung may aksidenteng naputol ang aking susi.
Pumunta sa Configuration policy β Directives sa kaliwa makikita natin ang βDirective libraryβ Hanapin ang βRemote access β SSH authorized keysβ, sa kanang click Create Directive
Naglalagay kami ng impormasyon tungkol sa user at idinagdag ang kanyang susi. Susunod, piliin ang patakaran sa aplikasyon
-
Global - Default na patakaran
-
Ipatupad - Ipatupad sa mga napiling server
-
Audit - Magsasagawa ng audit at sasabihin kung sinong mga kliyente ang may susi
Tiyaking ipahiwatig ang aming panuntunan
Pagkatapos ay i-save at tapos ka na.
Suriin
Matagumpay na naidagdag ang susi
Mga tinapay
Ang ahente ay nagbibigay ng kumpletong impormasyon tungkol sa server. Mga listahan ng mga naka-install na package, interface, open port at marami pang iba, na makikita mo sa screenshot sa ibaba
Maaari mo ring i-install at kontrolin ang software hindi lamang sa Linux kundi pati na rin sa Windows, hindi ko nasuri ang huli, hindi na kailangan..
Mula sa may-akda
Maaaring nagtatanong ka, bakit muling iimbento ang gulong kung ang ansible at papet ay matagal nang naimbento?
Sagot ko: Ang Ansible ay may mga pagkukulang, halimbawa, hindi namin nakikita kung anong estado ang config na ito ngayon, o ang pamilyar na sitwasyon kapag naglunsad ka ng isang papel o playbook at lumilitaw ang mga error sa pag-crash, at nagsimula kang umakyat sa server at makita kung ano package ay na-update kung saan. At hindi lang ako nagtrabaho sa puppet..
Mayroon bang anumang disadvantages kay Rudder? Marami.. Simula sa katotohanan na ang mga ahente ay bumagsak at kailangan mong muling i-install ang mga ito o gamitin ang rudder reset command. (ngunit sa pamamagitan ng paraan, hindi ko pa ito nakikita sa bersyon 6), na nagreresulta sa sobrang kumplikadong pag-setup at isang hindi makatwirang interface.
Mayroon bang anumang mga pakinabang? At marami ring pakinabang: Hindi tulad ng kilalang Ansible, mayroon kaming web interface kung saan makikita mo ang pagsunod na inilapat namin. Halimbawa, ang mga port ba ay lumalabas sa mundo, kung ano ang estado ng firewall, ang mga ahente ng seguridad ay naka-install o iba pang mga gadget.
Ang software na ito ay perpekto para sa departamento ng seguridad ng impormasyon, dahil ang estado ng imprastraktura ay palaging nasa harap ng iyong mga mata, at kung ang alinman sa mga patakaran ay lumiwanag sa pula, kung gayon ito ay isang dahilan upang bisitahin ang server. Gaya ng sinabi ko, 2 taon na akong gumagamit ng Rudder, at kung naninigarilyo ka ng kaunti, gumaganda ang buhay. Ang pinakamahirap na bagay sa isang malaking imprastraktura ay hindi mo matandaan kung anong estado ang nasa server, kung hindi nakuha ni June ang pag-install ng mga ahente ng seguridad o kung na-configure niya nang tama ang mga iptable, ngunit tutulungan ka ng timon na manatiling nakasubaybay sa lahat ng mga kaganapan. Ang ibig sabihin ng Aware ay armado! )
PS Ito ay naging higit pa kaysa sa aking pinlano, hindi ko ilalarawan kung paano mag-install ng mga pakete, kung biglang may mga kahilingan, magsusulat ako ng pangalawang bahagi.
PSS Ang artikulo ay para sa mga layuning pang-impormasyon, napagpasyahan kong ibahagi ito dahil napakakaunting impormasyon sa Internet. Marahil ito ay magiging kawili-wili sa isang tao. Magkaroon ng isang magandang araw, mahal na mga kaibigan)
Sa Mga Karapatan ng Pag-advertise
Mga epic na server - Ay
Pinagmulan: www.habr.com