Önsöz
"Dostluğumuz" iki yıl önce başladı. Önceki yöneticinin bu yazılımı bana miras olarak özgürce bıraktığı yeni bir iş yerine geldim. İnternette resmi belgeler dışında hiçbir şey bulunamadı. Şimdi bile Google'da "dümen" diye arattığınızda, vakaların %99'unda şunu göreceksiniz: gemi dümenleri ve quadcopters. Buna bir yol bulmayı başardım. Bu yazılımın topluluğu önemsiz olduğundan deneyimlerimi paylaşmaya ve komisyon almaya karar verdim. Birisi için faydalı olacağını düşünüyorum.
yani dümen
Rudder, sistem yapılandırmasını otomatikleştirmeye yardımcı olan açık kaynaklı bir denetim ve yapılandırma yönetimi yardımcı programıdır. Her son kullanıcıya bir temsilci kurulması prensibiyle çalışır. Kullanıcı dostu bir arayüz sayesinde altyapımızın belirlenen tüm politikalara ne kadar uygun olduğunu gözlemleyebiliyoruz.
kullanımı
Aşağıda Rudder'ı ne için kullandığımı listeleyeceğim.
-
Dosya ve yapılandırma kontrolü: ./ssh/authorized_keys ; /etc/hosts; iptables; (ve sonra fantezinin nereye varacağı)
-
Kurulu paketlerin kontrolü: zabbix.agent veya başka bir yazılım
Sunucu kurulumu
Geçen gün sürüm 5'ten 6.1'e yükselttim, her şey yolunda gitti. Aşağıda Deban/Ubuntu için komutlar olacak ve aynı zamanda destek de verilecektir:
Dikkatinizi dağıtmamak için kurulumu spoiler içinde saklayacağım.
Spoiler
Bağımlılıklar
rudder-server en az Java RE sürüm 8 gerektirir, standart depodan kurulabilir:
Kurulu olup olmadığını kontrol edin
java -version
çıkış ise
-bash: java: command not found
sonra yükle
apt install default-jre
Sunucu
Anahtarı içe aktarma
wget --quiet -O- "https://repository.rudder.io/apt/rudder_apt_key.pub" | sudo apt-key add -
İşte damga
pub 4096R/474A19E8 2011-12-15 Rudder Project (release key) <[email protected]>
Key fingerprint = 7C16 9817 7904 212D D58C B4D1 9322 C330 474A 19E8
Ücretli bir aboneliğimiz olmadığından aşağıdaki depoyu ekliyoruz
echo "deb http://repository.rudder.io/apt/6.1/ $(lsb_release -cs) main" > /etc/apt/sources.list.d/rudder.list
Depo listesini güncelleyin ve sunucuyu yükleyin
apt update
apt install rudder-server-root
Yönetici kullanıcı oluşturma
rudder server create-user -u admin -p "Ваш Пароль"
Gelecekte kullanıcıları yapılandırma aracılığıyla yönetebiliriz
Her şey, sunucu hazır.
Sunucu Ayarlama
Artık güvenlik politikasına odaklanarak aracıların ip adreslerini veya bir alt ağın tamamını dümen aracısına eklemeniz gerekir.
Ayarlar -> Genel
"Ağ ekle" alanına adresi ve maskeyi xxxx/xx formatında girin. Dahili ağın tüm adreslerinden erişime izin vermek için (Tabii ki bu bir test ağıysa ve NAT'ın arkasındaysanız), şunu girin: 0.0.0.0/0
Önemli - IP adresini ekledikten sonra Değişiklikleri kaydet seçeneğine tıklamayı unutmayın, aksi takdirde hiçbir şey kaydedilmeyecektir.
bağlantı noktaları
Sunucuda aşağıdaki bağlantı noktalarını açın
-
443-tcp
-
5309-tcp
-
514-udp
İlk sunucu kurulumunu çözdük.
Aracıyı Yükleme
Spoiler
Anahtar Ekleme
wget --quiet -O- "https://repository.rudder.io/apt/rudder_apt_key.pub" | sudo apt-key add -
Anahtar parmak izi
pub 4096R/474A19E8 2011-12-15 Rudder Project (release key) <[email protected]>
Key fingerprint = 7C16 9817 7904 212D D58C B4D1 9322 C330 474A 19E8
Depo ekleme
echo "deb http://repository.rudder.io/apt/6.1/ $(lsb_release -cs) main" > /etc/apt/sources.list.d/rudder.list
Aracıyı yükleme
apt update
apt install rudder-agent
Temsilci kurulumu
Politika sunucusunun IP adresini aracıya belirtin
rudder agent policy-server <rudder server ip or hostname> #Без скобок. Можно также использовать доменное имя
Aşağıdaki komutu çalıştırarak sunucuya yeni bir temsilci eklemek için istek göndereceğiz, birkaç dakika içinde yeni temsilciler listesinde görünecektir, nasıl ekleneceğini bir sonraki bölümde anlatacağım.
rudder agent inventory
Ayrıca aracıyı başlamaya zorlayabiliriz ve aracı anında bir istek gönderecektir.
rudder agent run
Temsilcimiz hazır, devam edelim.
Temsilci ekleme
Giriş yapmak
https://127.0.0.1/rudder/index.html
Temsilciniz "Yeni düğümleri kabul et" bölümünde görünecek, kutuyu işaretleyin ve Kabul Et'e tıklayın
Sistemin sunucuyu uyumluluk açısından kontrol etmesi biraz zaman alacaktır
Sunucu grupları oluşturun
Geliştiricilerin neden bu kadar hemoroit grup oluşumu yaptıklarına dair hiçbir ipucu olmadan bir grup oluşturalım (bu hala eğlence), ama anladığım kadarıyla başka yolu yok. Düğüm yönetimi -> Gruplar bölümüne gidin ve Oluştur'a tıklayın, statik bir grup ve ad seçin.
İhtiyacımız olan sunucuyu özel işaretlere göre, örneğin ip adresine göre filtreleyip kaydediyoruz
Grup kuruldu.
Kuralları ayarlama
Yapılandırma politikası → Kurallar'a gidin ve yeni bir kural oluşturun
Daha önce hazırlanmış bir grubu ekleyin grup (bu daha sonra yapılabilir)
Ve yeni bir direktif oluşturuyoruz
.ssh/authorized_keys'e ortak anahtarlar eklemek için bir yönerge oluşturalım. Bunu yeni bir çalışan ayrıldığında veya reasürans için, örneğin birisi yanlışlıkla anahtarımı keserse kullanıyorum.
Yapılandırma politikası → Yönergeler'e gidin, solda “Yönerge kitaplığı”nı görüyoruz. “Uzaktan erişim → SSH yetkili anahtarları” bulun, sağda Yönerge Oluştur'a tıklayın
Kullanıcıyla ilgili verileri girip anahtarını ekliyoruz. Ardından bir uygulama politikası seçin
-
Genel - Varsayılan Politika
-
Zorla - Seçilen sunucularda çalıştır
-
Denetim - Bir denetim gerçekleştirin ve hangi müşterilerin anahtara sahip olduğunu söyleyin
Kuralımızı belirttiğinizden emin olun
Daha sonra kaydedin ve işiniz bitti.
kontrol
Anahtar başarıyla eklendi
Çörekler
Aracı, sunucu hakkında tam bilgi verir. Aşağıdaki ekran görüntüsünde görebileceğiniz yüklü paketlerin, arayüzlerin, açık bağlantı noktalarının ve çok daha fazlasının listesi
Ayrıca sadece linux'a değil windows'a da yazılım kurup kontrol edebilirsiniz, ikincisini kontrol etmedim, gerek yoktu..
Yazardan
Yanıtlayıcı ve kukla uzun zamandır icat edilmişse neden tekerleği yeniden icat ettiğini soruyor olmalısınız.
Cevap veriyorum: Ansible'ın dezavantajları var, örneğin, bu yapılandırmanın şu anda hangi durumda olduğunu görmüyoruz veya bir rolü veya taktik kitabını başlattığınızda ve çökme hataları uçtuğunda durumu herkes biliyor ve sunucuya tırmanmaya başlıyorsunuz ve görüyorsunuz hangi paket nerede güncellendi? Ve ben sadece kukla ile çalışmadım ..
Rudder'ın herhangi bir dezavantajı var mı? Çok .. Ajanların düşmesi ve onları yeniden kurmanız veya dümen sıfırlama komutunu kullanmanız gerektiği gerçeğinden yola çıkarak. (ama bu arada bunu henüz sürüm 6'da görmedim), son derece karmaşık bir kurulum ve mantıksız bir arayüzle bitiyor.
Herhangi bir avantajı var mı? Üstelik pek çok artısı da var: Bilinen ansible'ın aksine, uyguladığımız uyumu görebildiğimiz bir web arayüzümüz var. Örneğin, bağlantı noktalarının dünyaya açık olup olmadığı, güvenlik duvarının hangi durumda olduğu, güvenlik aracılarının veya başka başıboş bir şeyin yüklü olup olmadığı.
Bu yazılım bilgi güvenliği departmanı için mükemmeldir, çünkü altyapının durumu her zaman gözünüzün önünde olacaktır ve kurallardan herhangi biri kırmızı renkte yanarsa, bu sunucuyu ziyaret etmek için bir nedendir. Dediğim gibi 2 yıldır Rudder kullanıyorum, biraz içerseniz hayat güzelleşiyor. Büyük bir altyapıdaki en zor şey, sunucunun hangi durumda olduğunu hatırlamamanızdır; June'un güvenlik aracılarını kurmayı kaçırıp kaçırmadığı veya iptables'ları doğru şekilde yapılandırıp yapılandırmadığı, rudder tüm olaylardan haberdar olmanıza yardımcı olacaktır. Farkında olmak silahlı demektir! )
Not: Planladığımdan çok daha fazlası çıktı, paketlerin nasıl kurulacağını anlatmayacağım, istek olursa ikinci bölümü yazacağım.
PSS Yazı bilgilendirme amaçlıdır, internette çok az bilgi olduğu için paylaşmaya karar verdim. Belki birisinin ilgisini çekecektir. İyi günler sevgili dostlar
Reklam gibi
Epik sunucular - Mı
Kaynak: habr.com