Өмнөх үг
Бидний “нөхөрлөл” хоёр жилийн өмнөөс эхэлсэн. Би шинэ ажлын байранд ирсэн бөгөөд өмнөх админ нь энэ програмыг надад өвлөн үлдээсэн. Би интернетээс албан ёсны бичиг баримтаас өөр юу ч олсонгүй. Одоо ч гэсэн google-ээс "жолооч"-ыг хайвал нийт тохиолдлын 99 хувьд нь хөлөг онгоцны жолоодлого, квадрокоптер гарч ирнэ. Би түүнд хандах арга замыг олж чадсан. Энэ программ хангамжийн нийгэмлэг маш бага тул би өөрийн туршлага, тармуурыг хуваалцахаар шийдсэн. Энэ нь хэн нэгэнд хэрэг болно гэж бодож байна.
Тиймээс Рудер
Rudder бол системийн тохиргоог автоматжуулахад тусалдаг нээлттэй эхийн аудит, тохиргооны удирдлагын хэрэгсэл юм. Энэ нь эцсийн хэрэглэгч бүрт агент суулгах зарчмаар ажилладаг. Тохиромжтой интерфейсээр дамжуулан бид дэд бүтэц нь заасан бүх бодлоготой хэр нийцэж байгааг хянах боломжтой.
Ашиглах
Доор би Rudder-ийг юунд ашигладаг болохыг жагсаах болно.
-
Файл болон тохиргооны хяналт: ./ssh/authorized_keys ; /etc/hosts ; iptables; (дараа нь таны төсөөлөл хаашаа хөтөлдөг вэ)
-
Суулгасан багцуудыг хянах: zabbix.agent эсвэл бусад програм хангамж
Сервер суурилуулах
Саяхан би 5-аас 6.1 хувилбар руу шинэчилсэн, бүх зүйл сайн болсон. Доорх нь Deban/Ubuntu-д зориулсан тушаалууд боловч дэмжлэг байдаг:
Би таны анхаарлыг сарниулахгүйн тулд суулгацыг спойлерт нуух болно.
Хорлон сүйтгэгчид
Хараат байдал
Rudder-server нь Java RE-ийн доод тал нь 8 хувилбарыг шаарддаг бөгөөд үүнийг стандарт репозитороос суулгаж болно:
Суулгасан эсэхийг шалгаж байна
java -version
дүгнэлт бол
-bash: java: command not found
дараа нь суулгана уу
apt install default-jre
Сервер
Түлхүүрийг импортлож байна
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 "Ваш Пароль"
Ирээдүйд бид тохиргоогоор дамжуулан хэрэглэгчдийг удирдах боломжтой
Ингээд л сервер бэлэн боллоо.
Сервер тааруулах
Одоо та агентуудын IP хаягууд эсвэл бүхэл бүтэн дэд сүлжээг жолооны агент руу нэмэх хэрэгтэй, бид аюулгүй байдлын бодлогод анхаарлаа хандуулдаг.
Тохиргоо -> Ерөнхий
"Сүлжээ нэмэх" талбарт хаяг, маскыг xxxx/xx форматаар оруулна уу. Дотоод сүлжээний бүх хаягаас хандахыг зөвшөөрөхийн тулд (Мэдээж энэ нь туршилтын сүлжээ биш бөгөөд та NAT-ийн ард байгаа бол) дараахыг оруулна уу: 0.0.0.0/0
Анхаарах зүйл - IP хаягийг нэмсний дараа "Өөрчлөлтийг хадгалах" дээр дарахаа бүү мартаарай, эс тэгвээс юу ч хадгалагдахгүй.
Боомтууд
Сервер дээр дараах портуудыг нээнэ үү
-
443 - tcp
-
5309 - tcp
-
514 - udp
Бид серверийн анхны тохиргоог эрэмбэлсэн.
Агент суурилуулах
Хорлон сүйтгэгчид
Түлхүүр нэмж байна
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
Таны төлөөлөгч "Шинэ зангилаа хүлээн авах" хэсэгт гарч ирэх бөгөөд нүдийг чагтлаад "Зөвшөөрөх" дээр дарна уу
Систем серверийн нийцлийг шалгах хүртэл бага зэрэг хугацаа шаардагдана
Серверийн бүлгүүдийг үүсгэх
Бүлэг үүсгэцгээе (энэ нь энтертайнмент хэвээр байгаа), хөгжүүлэгчид яагаад ийм бузар булай бүлэг байгуулсныг мэдэхгүй ч миний ойлгож байгаагаар өөр арга байхгүй. Node management -> Groups хэсэгт очоод Create дээр дарж, статик бүлэг болон нэрийг сонгоно.
Бид шаардлагатай серверээ тусгай функцээр, жишээлбэл, ip хаягаар шүүж, хадгалдаг
Бүлэг байгуулагдаж байна.
Дүрмүүдийг тохируулах
Тохиргооны бодлого → Дүрэм рүү очоод шинэ дүрэм үүсгэ
Өмнө нь бэлтгэсэн бүлгийг нэмэх (үүнийг дараа нь хийж болно)
Мөн бид шинэ удирдамж боловсруулдаг
.ssh/authorized_keys-д нийтийн түлхүүр нэмэх удирдамжийг үүсгэцгээе. Би үүнийг шинэ ажилтан явах үед эсвэл давхар даатгалд ашиглах, жишээлбэл хэн нэгэн миний түлхүүрийг санамсаргүйгээр таслах тохиолдолд ашигладаг.
Тохиргооны бодлого → Заавар руу очно уу, зүүн талд "Захиргааны номын сан" гарч ирнэ "Алсын хандалт → SSH зөвшөөрөгдсөн түлхүүр" -ийг олоод баруун талд "Захирамж үүсгэх" дээр дарна уу.
Бид хэрэглэгчийн тухай мэдээллийг оруулаад түүний түлхүүрийг нэмнэ. Дараа нь програмын бодлогыг сонгоно уу
-
Глобал - Өгөгдмөл бодлого
-
Хэрэгжүүлэх - Сонгосон серверүүд дээр гүйцэтгэх
-
Аудит - Аудит хийж, ямар үйлчлүүлэгчид түлхүүр байгааг хэлэх болно
Манай дүрмийг зааж өгөхөө мартуузай
Дараа нь хадгалаад дуусна.
Шалгах
Түлхүүрийг амжилттай нэмлээ
Боов
Агент нь серверийн талаархи бүрэн мэдээллийг өгдөг. Суулгасан багцуудын жагсаалт, интерфэйсүүд, нээлттэй портууд болон бусад олон зүйлийг та доорх дэлгэцийн зургаас харж болно
Та мөн програм хангамжийг зөвхөн Линукс төдийгүй Windows дээр суулгаж, хянах боломжтой, би сүүлийнхийг шалгаагүй, шаардлагагүй байсан..
Зохиогчоос
Магадгүй та "Хүүхэлдэй болон хүүхэлдэйг аль хэдийн эртнээс зохион бүтээсэн бол яагаад дугуйг дахин зохион бүтээх ёстой гэж?"
Би хариулдаг: Ansible-д дутагдал байгаа, жишээ нь, бид энэ тохиргоог одоо ямар байдалд байгаа эсвэл дүр эсвэл тоглоомын номыг эхлүүлэх үед танил болсон нөхцөл байдал, эвдрэлийн алдаа гарч ирвэл та сервер рүү авирч, юу болохыг харахгүй байна. багцыг хаана шинэчилсэн. Тэгээд би зүгээр л хүүхэлдэйтэй ажиллаагүй..
Руддерт ямар нэгэн сул тал бий юу? Маш их.. Агентууд унаж, дахин суулгах эсвэл руль дахин тохируулах командыг ашиглахаас эхлээд. (гэхдээ дашрамд хэлэхэд, би үүнийг 6-р хувилбар дээр хараахан хараагүй байна), энэ нь маш нарийн төвөгтэй тохиргоо, логик бус интерфейстэй болсон.
Ямар нэгэн давуу тал бий юу? Мөн маш олон давуу талууд бий: Алдарт Ansible-ээс ялгаатай нь бид вэб интерфэйстэй бөгөөд та бидний хэрэглэж буй нийцлийг харах боломжтой. Жишээлбэл, дэлхий дээр гарч буй портууд, галт ханын төлөв байдал, аюулгүй байдлын агентууд эсвэл бусад хэрэгслүүд суулгасан эсэх.
Энэхүү программ хангамж нь мэдээллийн аюулгүй байдлын хэлтэст төгс тохирно, учир нь дэд бүтцийн байдал үргэлж таны нүдний өмнө байх бөгөөд хэрэв дүрмийн аль нэг нь улаанаар асвал серверт зочлох шалтгаан болдог. Миний хэлсэнчлэн би Руддерыг 2 жил хэрэглэж байна, хэрэв та үүнийг бага зэрэг татвал амьдрал сайжирна. Томоохон дэд бүтцийн хамгийн хэцүү зүйл бол та сервер ямар байдалд байгаа, XNUMX-р сард хамгаалалтын агентуудыг суулгаагүй эсэх, iptables-ийг зөв тохируулсан эсэх зэргийг санахгүй байх явдал юм. Мэдэх нь зэвсэглэсэн гэсэн үг! )
Жич Энэ нь миний төлөвлөж байснаас хамаагүй их болсон, би багцуудыг хэрхэн суулгах талаар тайлбарлахгүй, хэрэв гэнэт хүсэлт ирвэл би хоёр дахь хэсгийг бичих болно.
PSS Энэ нийтлэл нь мэдээллийн зорилгоор хийгдсэн тул интернетэд маш бага мэдээлэл байгаа тул би үүнийг хуваалцахаар шийдсэн. Магадгүй энэ нь хэн нэгэнд сонирхолтой байх болно. Өдрийг сайхан өнгөрүүлээрэй, эрхэм найзууд аа)
Сурталчилгааны эрх
Эпик серверүүд Байна уу
Эх сурвалж: www.habr.com