Mundarija:
2025 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2025-01-13 06:58
JoeFollow tomonidan muallifning boshqa maqolalari:
Haqida: Men deyarli hamma narsa haqida o'ylashni yaxshi ko'raman, ba'zida bu oxir -oqibat amalga oshadi. Loyihalarni ko'rib zavqlaning, bir narsani yirtib ko'ring va bu qanday ketayotganini menga xabar bering. salom, -Jo Jo haqida ko'proq ma'lumot »
Bu ko'rsatma ScreenOS bilan ishlaydigan tarmoq xavfsizlik devorining zaxira nusxalarini avtomatlashtirish uchun ishlatilishi mumkin bo'lgan skriptni ko'rsatadi.
1 -qadam: talablar
Bu skript kutilgan tarzda yozilgan va sizda tarmoq ekrani va Linux muhitida SSH yoqilgan deb taxmin qilinadi. Agar siz hech qachon kutmagan bo'lsangiz, Oreillyda "Kutishlarni o'rganish" kitobi bor
2 -qadam: o'zgaruvchilar
Biz ba'zi o'zgaruvchilarni o'rnatishni boshlaymiz, siz port/foydalanuvchi nomi/parol/netscreen/tezkor o'zgaruvchilarni o'z muhitingizga mos ravishda sozlashni xohlaysiz. #!/usr/bin/kutish#skriptni tarmoq xavfsizlik devorlarining zaxira konfiguratsiyasini kutish#Jo##Ba'zi bir vaqtni belgilash vaqtini belgilash 60 "Foydalanuvchi" parolni o'rnatish "parol" "2022" portini o'rnatish "2022" tarmog'ini sozlash "foo.bar.com" ni o'rnating "/mnt/netapp/backups/foo.bar.com"set log" [vaqt tamg'asi -format%Y-%m-%d] -config.txt "mailto" [email protected] "pochta mavzusini o'rnating" Xato: netscreen zaxiralash muvaffaqiyatsiz tugadi [vaqt tamg'asi -format%Y-%m-%d] "pochta jo'natmasini o'rnatish" "sozlash" foo->"
3 -qadam: Ulanish
Keyingi skriptda biz harakat qilamiz va connect.send_user "NetScren zaxira skripti / n" send_user "$ netscreenga ulanish / n" ssh $ user@$ netscreen -p $ portini kutamiz {"parol:" {yuborish "$ parol \" r "kutish {" $ xohishi "{send_user" Ulangan "}" Ruxsat rad etildi "{send_user" Parol noto'g'ri "close}}}" "Xost uchun yo'l yo'q" {send_user "$ netscreenga ulanmadi / n" pochta jo'natmasini belgilang "$ netscreenga ulanib bo'lmadi / n"} "Nom yoki xizmat noma'lum" {send_user "Ulanish imkonsiz. $ netscreen / n "pochta jo'natmalarini o'rnatish" $ netscreen -ga ulanmadi / n "} vaqt tugashi {send_user" $ netscreen -ga ulanish vaqti tugadi ", agar {$ mailfail! =" "} { exec /bin /mail -s $ mailsubject $ mailto << "$ mailfail" exit}
4 -qadam: Paging -ni o'chiring
Siz sahifa almashishni o'chirib qo'yishingiz kerak - yoki tarmoq ekraniga tezroq kiring. #"Ko'proq" taklifnomalari "konsoli sahifasini o'chirib qo'ying 0 / r" kuting {"$ prompt" {send_user "\ nPaging o'chirilgan / n"} standart {yuborish "ScreenOS faqat paging imkoniyatidan tashqari. / N" pochta jo'natilishini sozlash "ScreenOS qilgan paging variantidan tashqari ". close} timeout {send_user "ScreenOS paging variantidan tashqari / n" pochta jo'natmalarini o'rnatdi "ScreenOS paging opsiyasidan tashqari emas." yopish}} agar {$ mailfail! = ""} {exec /bin /mail -s $ mailsubject $ mailto << "$ mailfail" chiqish}
5 -qadam: Konfiguratsiyani oling
Endi biz konfiguratsiyani olamiz. send_user "Konfiguratsiya yuklanmoqda / n" log_file $ basedir/$ logsend "config / r" kuting {"$ buyrug'i" {log_file send_user "\ nKonfiguratsiya yuklandi / n"} kutish vaqti {send_user "\ nKonfiguratsiyani yuklashda xato." mailfail -ni o'rnating "Konfiguratsiyani yuklab olishda xato." }} closeif {$ mailfail! = ""} {exec /bin /mail -s $ mailsubject $ mailto << "$ mailfail" chiqish}
6 -qadam: Konfiguratsiya to'g'ri o'lchamda ekanligini tekshiring
Konfiguratsiya kamida 1k.set fayl hajmi [fayl hajmi $ basedir/$ log] yoki yo'qligini tekshirish uchun biz bilamiz, agar {$ filesize <= 1024} {send_user "Netscreen konfiguratsiyasi juda kichik bo'lsa, / n" pochta jo'natilishini sozlash "ni tekshiring. Netscreen konfiguratsiyasi juda kichik, / n "exec /bin /mail -s $ mailsubject $ mailto <<" $ mailfail "exit} ni tekshiring.
7 -qadam: tozalash
Ikki haftadan eski konfiguratsiyalarni olib tashlash uchun ozgina tozalashni boshlaymiz. #2 haftalikdan katta konfiguratsiyani olib tashlang $ basedir -name '*config.txt*' -mtime +14 ni toping.
8 -qadam: Hammasi birgalikda
Endi hammasini bir joyga to'plang. U matnli fayl sifatida biriktirilgan. Har qanday muvaffaqiyatsizliklar haqida elektron pochta xabarlarini yuboradi. #!/usr/bin/kutish#skriptni tarmoq xavfsizlik devorlarining zaxira konfiguratsiyasini kutish#Jo##ba'zi bir vaqtni belgilash vaqtini belgilash 60so'p "parol" parolni o'rnatish "parol" portni o'rnatish "2022" netscreenni sozlash "foo.bar.com" ni o'rnating "/mnt/netapp/backups/foo.bar.com"set log" [vaqt tamg'asi -format%Y-%m-%d] -config.txt "mailto" [email protected] "pochta mavzusini o'rnating" Xato: netscreen zaxiralash muvaffaqiyatsiz tugadi [vaqt tamg'asi -format%Y-%m-%d] "pochta jo'natmalarini o'rnatish" "sozlash" foo-> "send_user" NetScren zaxira skriptini / n "send_user" $ netscreenga ulanish / n "ssh $ user@$ paydo bo'ldi netscreen -p $ port kutish {"parol:" {yuborish "$ parol / r" kutish {"$ taklifi" {send_user "Ulangan"} "Ruxsat rad etildi" {send_user "Parol yaroqsiz," o'rnatilgan pochta jo'natmasidan chiqish ") Noto'g'ri parol, chiqish "close} timeout {send_user" No prompt qaytarildi "setfailfail" "No return" "}}}}" Xostga yo'nalish yo'q "{send_user" $ netscreenga ulanib bo'lmadi / n "" mailfail "ni" $ netscreenga ulanib bo'lmadi / " n "}" Nom yoki xizmat noma'lum "{send_user" $ netscreen / n "ga ulanmadi et mailfail "$ netscreen -ga ulanib bo'lmadi / n"} vaqt tugashi {send_user "$ netscreen -ga ulanish vaqti tugadi", agar {$ mailfail! = ""} {exec /bin /mail bo'lsa, "netscreen -ga ulanish vaqti tugadi") pochta sozlamalarini o'rnating. -s $ mailsubject $ mailto << "$ mailfail" chiqish}#Endi bu tugadi, davom eting#"ko'proq" so'rovlarini "konsol sahifasini o'chiring 0 / r" kuting {"$ prompt" {send_user "\ nPaging sahifasi o'chirilgan / n "} standart {jo'natish" ScreenOS -da paging opsiyasi bo'lmagan. / n "pochta jo'natmalarini o'rnatish" ScreenOS -da paging opsiyasi bundan mustasno. " close} timeout {send_user "ScreenOS paging imkoniyatidan tashqari / n" pochta jo'natmasini o'rnatish "ScreenOS paging opsiyasidan tashqari emas." close}} if {$ mailfail! = ""} {exec/bin/mail -s $ mailsubject $ mailto << "$ mailfail" exit} send_user "Konfiguratsiyani yuklash / n" log_file $ basedir/$ logsend "konfiguratsiyani / r oladi "kuting {" $ prompt "{log_file send_user" / nKonfiguratsiya yuklandi / n "} kutish vaqti {send_user" / nKonfiguratsiyani yuklashda xato. " mailfail -ni o'rnating "Konfiguratsiyani yuklab olishda xato." }} closeif {$ mailfail! = ""} {exec/bin/mail -s $ mailsubject $ mailto << "$ mailfail" exit} fayl hajmini o'rnating [fayl hajmi $ basedir/$ log], agar {$ filesize <= 1024} {send_user "Netscreen konfiguratsiyasi juda kichik, tekshiring / n" pochta jo'natmasining sozlanishi "Netscreen konfiguratsiyasi juda kichik, / n" exec /bin /mail -s $ mailsubject $ mailto << "$ mailfail" chiqish} #Refigni olib tashlang 2 haftadan katta yoshdagi $ basedir -name '*config.txt*' -mtime +14 ni toping