kata pengantar
“Persahabatan” kami dimulai dua tahun lalu. Saya datang ke tempat kerja yang baru, dimana admin sebelumnya dengan santainya mewariskan software ini kepada saya sebagai warisan. Saya tidak dapat menemukan apa pun di Internet selain dokumentasi resmi. Bahkan sekarang, jika Anda mencari “kemudi” di Google, dalam 99% kasus yang muncul adalah: helm kapal dan quadcopter. Saya berhasil menemukan pendekatan kepadanya. Karena komunitas perangkat lunak ini dapat diabaikan, saya memutuskan untuk berbagi pengalaman dan menyapu. Saya pikir ini akan bermanfaat bagi seseorang.
Jadi Kemudi
Rudder adalah utilitas audit sumber terbuka dan manajemen konfigurasi yang membantu mengotomatiskan konfigurasi sistem. Ia bekerja berdasarkan prinsip menginstal agen untuk setiap pengguna akhir. Melalui antarmuka yang mudah digunakan, kami dapat memantau seberapa besar kepatuhan infrastruktur kami terhadap semua kebijakan yang ditentukan.
Menggunakan
Di bawah ini saya akan mencantumkan untuk apa saya menggunakan Rudder.
-
Kontrol file dan konfigurasi: ./ssh/authorized_keys ; /etc/hosts ; iptables; (dan kemudian ke mana imajinasi Anda mengarah)
-
Kontrol paket yang diinstal: zabbix.agent atau perangkat lunak lainnya
Instalasi server
Baru-baru ini saya memperbarui dari versi 5 ke 6.1, semuanya berjalan dengan baik. Di bawah ini adalah perintah untuk Deban/Ubuntu tetapi ada juga dukungannya:
Saya akan menyembunyikan instalasi di spoiler agar tidak mengganggu Anda.
Spoiler
Ketergantungan
rudder-server memerlukan Java RE setidaknya versi 8, dapat diinstal dari repositori standar:
Memeriksa untuk melihat apakah sudah diinstal
java -version
jika kesimpulannya
-bash: java: command not found
lalu instal
apt install default-jre
Server
Mengimpor kuncinya
wget --quiet -O- "https://repository.rudder.io/apt/rudder_apt_key.pub" | sudo apt-key add -
Ini hasil cetakannya sendiri
pub 4096R/474A19E8 2011-12-15 Rudder Project (release key) <[email protected]>
Key fingerprint = 7C16 9817 7904 212D D58C B4D1 9322 C330 474A 19E8
Karena kami tidak memiliki langganan berbayar, kami menambahkan repositori berikut
echo "deb http://repository.rudder.io/apt/6.1/ $(lsb_release -cs) main" > /etc/apt/sources.list.d/rudder.list
Perbarui daftar repositori dan instal server
apt update
apt install rudder-server-root
Buat admin pengguna
rudder server create-user -u admin -p "Ваш Пароль"
Di masa depan kami dapat mengelola pengguna melalui konfigurasi
Itu saja, server sudah siap.
Penyetelan Server
Sekarang Anda perlu menambahkan alamat IP agen atau seluruh subnet ke agen kemudi, kami fokus pada kebijakan keamanan.
Pengaturan -> Umum
Di bidang “Tambahkan jaringan”, masukkan alamat dan topeng dalam format xxxx/xx. Untuk mengizinkan akses dari semua alamat jaringan internal (Kecuali tentu saja ini adalah jaringan uji dan Anda menggunakan NAT) masukkan: 0.0.0.0/0
Penting - setelah menambahkan alamat ip, jangan lupa klik Simpan perubahan, jika tidak, tidak ada yang akan disimpan.
Pelabuhan
Buka port berikut di server
-
443 - tcp
-
5309 - tcp
-
514 - udp
Kami telah menyelesaikan pengaturan server awal.
Instalasi Agen
Spoiler
Menambahkan kunci
wget --quiet -O- "https://repository.rudder.io/apt/rudder_apt_key.pub" | sudo apt-key add -
Sidik jari kunci
pub 4096R/474A19E8 2011-12-15 Rudder Project (release key) <[email protected]>
Key fingerprint = 7C16 9817 7904 212D D58C B4D1 9322 C330 474A 19E8
Menambahkan repositori
echo "deb http://repository.rudder.io/apt/6.1/ $(lsb_release -cs) main" > /etc/apt/sources.list.d/rudder.list
Menginstal agen
apt update
apt install rudder-agent
Penyiapan agen
Kami menunjukkan kepada agen alamat IP server kebijakan
rudder agent policy-server <rudder server ip or hostname> #Без скобок. Можно также использовать доменное имя
Dengan menjalankan perintah berikut kami akan mengirimkan permintaan untuk menambahkan agen baru ke server, dalam beberapa menit akan muncul di daftar agen baru, cara menambahkannya akan saya jelaskan di bagian selanjutnya
rudder agent inventory
Kami juga dapat memaksa agen untuk memulai dan agen akan mengirimkan permintaan secara instan
rudder agent run
Agen kami sudah siap, mari kita lanjutkan.
Menambahkan agen
Gabung
https://127.0.0.1/rudder/index.html
Agen Anda akan muncul di bagian “Terima node baru”, centang kotak dan klik Terima
Perlu sedikit waktu hingga sistem memeriksa kepatuhan server
Membuat grup server
Mari kita buat grup (itu masih hiburan), tidak tahu kenapa para pengembang melakukan pembentukan grup yang begitu keji, tapi menurut pemahaman saya, tidak ada cara lain. Buka bagian Manajemen Node -> Grup dan klik Buat, pilih grup dan nama statis.
Kami memfilter server yang kami butuhkan berdasarkan fitur khusus, misalnya berdasarkan alamat ip, dan menyimpannya
Grup sudah diatur.
Menyiapkan aturan
Buka Kebijakan konfigurasi → Aturan dan buat aturan baru
Tambahkan grup yang telah disiapkan sebelumnya (ini bisa dilakukan nanti)
Dan kami membentuk arahan baru
Mari buat arahan untuk menambahkan kunci publik ke .ssh/authorized_keys. Saya menggunakan ini ketika ada karyawan baru yang keluar, atau untuk reasuransi, misalnya, jika seseorang secara tidak sengaja memotong kunci saya.
Buka Kebijakan konfigurasi → Petunjuk di sebelah kiri kita melihat “Perpustakaan arahan” Temukan “Akses jarak jauh → Kunci resmi SSH”, di sebelah kanan klik Buat Petunjuk
Kami memasukkan informasi tentang pengguna dan menambahkan kuncinya. Selanjutnya, pilih kebijakan aplikasi
-
Global - Kebijakan default
-
Terapkan - Jalankan pada server yang dipilih
-
Audit - Akan melakukan audit dan memberi tahu klien mana yang memiliki kuncinya
Pastikan untuk menunjukkan aturan kami
Kemudian simpan dan selesai.
Memeriksa
Kunci berhasil ditambahkan
Roti
Agen memberikan informasi lengkap tentang server. Daftar paket yang diinstal, antarmuka, port terbuka, dan banyak lagi, yang dapat Anda lihat pada gambar di bawah
Anda juga dapat menginstal dan mengontrol perangkat lunak tidak hanya di Linux tetapi juga di Windows, saya tidak memeriksa yang terakhir, tidak perlu..
Dari penulis
Anda mungkin bertanya, mengapa menemukan kembali roda jika kemungkinan dan boneka sudah ditemukan sejak lama?
Saya menjawab: Ansible memiliki kekurangan, misalnya, kami tidak melihat status konfigurasi ini sekarang, atau situasi yang biasa ketika Anda meluncurkan peran atau buku pedoman dan kesalahan crash muncul, dan Anda mulai naik ke server dan melihat apa paket telah diperbarui di mana. Dan saya tidak bekerja dengan boneka..
Apakah ada kelemahan pada Rudder? Banyak.. Mulai dari agen yang terjatuh dan harus menginstal ulang atau menggunakan perintah rudder reset. (tapi omong-omong, saya belum melihatnya di versi 6), sehingga menghasilkan pengaturan yang sangat rumit dan antarmuka yang tidak logis.
Apakah ada keuntungannya? Dan masih banyak lagi kelebihannya: Berbeda dengan Ansible yang terkenal, kami memiliki antarmuka web di mana Anda dapat melihat kepatuhan yang telah kami terapkan. Misalnya saja port-port yang mencuat ke dunia, bagaimana keadaan firewallnya, apakah ada security agent yang terpasang atau gadget lainnya.
Perangkat lunak ini sangat cocok untuk departemen keamanan informasi, karena keadaan infrastruktur akan selalu ada di depan mata Anda, dan jika ada aturan yang menyala merah, ini adalah alasan untuk mengunjungi server. Seperti yang saya katakan, saya telah menggunakan Rudder selama 2 tahun sekarang, dan jika Anda merokok sedikit, hidup menjadi lebih baik. Hal tersulit dalam infrastruktur besar adalah Anda tidak ingat status server saat ini, apakah June melewatkan instalasi agen keamanan atau apakah ia mengkonfigurasi iptables dengan benar, tetapi rudder akan membantu Anda tetap mengikuti semua kejadian. Sadar berarti bersenjata! )
PS Ternyata lebih dari yang saya rencanakan, saya tidak akan menjelaskan cara menginstal paket, jika tiba-tiba ada permintaan, saya akan menulis bagian kedua.
PSS Artikel ini untuk tujuan informasi, saya memutuskan untuk membagikannya karena hanya ada sedikit informasi di Internet. Mungkin ini akan menarik bagi seseorang. Semoga harimu menyenangkan, teman-teman)
Tentang Hak Periklanan
Server epik - Apakah
Sumber: www.habr.com