Mündəricat:
2025 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2025-01-13 06:56
Müəllif tərəfindən daha çox joeFollow:
Haqqında: Təxminən bir şeylə məşğul olmağı sevirəm, bəzən sonda olur. Layihələrə baxmaqdan zövq alın, bir şeyi açmağa çalışın və bunun necə getdiyini mənə bildirin. alqışlar, -Joe haqqında daha çox məlumat »
Bu təlimat, ScreenOS işləyən bir şəbəkə təhlükəsizlik duvarının ehtiyat nüsxələrini avtomatlaşdırmaq üçün istifadə edilə bilən bir skript göstərir.
Addım 1: Tələblər
Bu skript gözlənilən şəkildə yazılmışdır və şəbəkənizin ekranında və Linux mühitində SSH -nin açıldığını güman edir. Gözlədiyinizi heç vaxt gözdən keçirməmisinizsə, Oreilly -nin möhtəşəm bir "Gözləmə Araşdırma" kitabı var
Addım 2: Dəyişənlər
Bəzi dəyişənləri təyin etməklə başlayacağıq. Port/istifadəçi adı/parol/netscreen/istək dəyişənlərini mühitinizə uyğun olaraq qurmaq istəyəcəksiniz. #!/usr/bin/wait#Netscreen firewalllarının ehtiyat konfiqurasiyasından skript gözləyin#Joe#Bəzi standart vaxt aşımlarını təyin et 60set istifadəçi "root" parol təyin et "parol" portu "2022" qurma portu "2022" set netscreen "foo.bar.com" set basedir "/mnt/netapp/backups/foo.bar.com"set log" [vaxt damgası -format%Y-%m-%d] -config.txt "mailto" [email protected] "poçt mövzusunu təyin et" Xəta: netscreen yedəkləmə uğursuz oldu [vaxt damgası -format%Y-%m-%d] "poçt göndərişini təyin et" "istək" foo-> "qur
Addım 3: Bağlayın
Skriptin sonrakı hissəsində çalışacağıq və connect.send_user "NetScren Yedəkləmə Skripti / n" send_user "$ netscreen -ə qoşulur / n" ssh $ user@$ netscreen -p $ portunu gözləyin {"parol:" {göndər "$ parol \" r "gözləmək {" $ prompt "{send_user" Bağlandı "}" İcazə rədd edildi "{send_user" Yanlış şifrə, "setfail set" -dən çıxmaq "Yanlış parol", "close} timeout" -dan çıxmaq {send_user "İstemi geri qaytarmamaq" poçt göndərməsini təyin etmək) İstənməyib "close}}}" Ev sahibi olmaq üçün marşrut yoxdur "{send_user" $ netscreen -ə qoşulmaq mümkün deyil / n "mailfail qurmaq" $ netscreen -ə qoşulmaq mümkün deyil / n "}" Ad və ya xidmət bilinmir "{send_user" Qoşulmaq mümkün deyil $ netscreen / n "poçt göndərişini təyin et" $ netscreen -ə bağlanıla bilmədi / n "} zaman aşımı {send_user" $ netscreen -ə bağlanan zaman aşımı "{$ mailfail! =" "} {olarsa, poçt göndərişini" $ netscreen -ə bağlama vaxtı çatdı "} təyin et exec /bin /mail -s $ mailsubject $ mailto << "$ mailfail" exit}
Addım 4: Səhifəni bağlayın
Çağırma funksiyasını söndürməlisiniz - və ya şəbəkə ekranına daha tez daxil olun. #"Daha çox" əmrləri göndər "konsol səhifəsini deaktiv et 0 / r" gözlə {"$ prompt" {send_user "\ nPaging Disabled / n"} default {send "ScreenOS, paging seçimini istisna etmədi. / N" poçt göndərişini təyin et "ScreenOS etdi səhifələmə seçimi istisna olmaqla. " close} zaman aşımı {send_user "ScreenOS səhifələmə seçimindən başqa bir şey etmədi / n" poçt göndərişini təyin et "ScreenOS disk bölmə seçimi istisna etmədi." yaxın}} əgər {$ mailfail! = ""} {exec /bin /mail -s $ mailsubject $ mailto << "$ mailfail" exit}
Addım 5: Config əldə edin
İndi konfiqurasiyanı əldə edəcəyik. send_user "Konfiqurasiya endirilir / n" log_file $ basedir/$ logsend "konfiqurasiya alın / r" gözləyin {"$ komutu" {log_file send_user "\ nKonfiqurasiya endirildi / n"} zaman aşımı {send_user "\ nKonfiqurasiya endirmə zamanı səhv." mailfail "Konfiqurasiya endirmə zamanı xəta." }} closeif {$ mailfail! = ""} {exec /bin /mail -s $ mailsubject $ mailto << "$ mailfail" çıxış}
Addım 6: Konfiqurasiyanın doğru ölçüdə olub olmadığını yoxlayın
{$ Filesize <= 1024} {send_user "Netscreen konfiqurasiyası çox kiçikdirsə, / n" poçt göndərişini təyin edin ", konfiqurasiyanın ən azı 1k.set fayl ölçüsü [fayl ölçüsü $ basedir/$ log] olub olmadığını yoxlayacağıq. Netscreen konfiqurasiyası çox kiçikdir, / n "exec /bin /mail -s $ mailsubject $ mailto <<" $ mailfail "exit} araşdırın
Addım 7: Təmizləmə
İki həftədən artıq olan konfiqurasiyaları silmək üçün bir az təmizləmə aparaq. #2 həftədən çox olan konfiqurasiyanı sil $ basedir -name '*config.txt*' -mtime +14
Addım 8: Hamısı Birlikdə
İndi hamısını bir yerə qoyun. Mətn faylı olaraq əlavə olunur. Hər hansı bir uğursuzluqla əlaqədar e -poçt göndərəcək. #!/usr/bin/wait#Netscreen firewalllarının ehtiyat konfiqurasiyası üçün skript gözləyin#Joe#Bəzi standart vaxt aşımını təyin et 60set istifadəçi "kök" parol təyin et "parol" port qur "2022" set netscreen "foo.bar.com" set basedir "/mnt/netapp/backups/foo.bar.com"set log" [timestamp -format%Y-%m-%d] -config.txt "mailto" [email protected] "poçt mövzusunu təyin et" Xəta: netscreen yedəkləmə uğursuz oldu [vaxt damgası -format%Y-%m-%d] "poçt göndərişini təyin et" "istək qur" foo-> "send_user" NetScren Yedəkləmə Ssenarisi / n "send_user" $ netscreenə qoşulur / n "ssh $ user@$ əmələ gəldi netscreen -p $ port gözləmə {"parol:" {göndər "$ parol / r" gözləmə {"$ istəyi" {send_user "Bağlandı"} "İcazə rədd edildi" {send_user "Yanlış parol, çıxan" poçt poçtu çıxarıldı ") Yanlış parol, çıxmaq "close} zaman aşımı {send_user" İstifadəçi geri qaytarılmadı "poçt göndərişini təyin et" istənmə geri qaytarılmadı "close}}}" Ev sahibi üçün marşrut yoxdur "{send_user" $ netscreen -ə qoşulmaq mümkün deyil / n "poçt göndərişini təyin etmək" $ netscreen -ə qoşulmaq mümkün deyil / n "}" Adı və ya xidməti məlum deyil "{send_user" $ netscreen / n "lərinə qoşula bilmir et mailfail "$ netscreen -ə bağlanıla bilmir / n"} zaman aşımı {send_user "$ netscreen -ə bağlanan zaman aşımı" {$ mailfail! = ""} {exec /bin /mail olarsa, "$ netscreen -ə bağlanan zaman aşımı" yaxınlaşan poçt göndərişini təyin edin -s $ mailsubject $ mailto << "$ mailfail" exit}#Artıq iş bitdi, davam edin#"daha çox" sorğu göndər "konsol səhifəsini deaktiv edin 0 / r" gözləyin {"$ prompt" {send_user "\ nPaging Disabled \" n "} defolt {göndər" ScreenOS səhifələmə seçimindən başqa bir şey etməmişdir. / n "poçt göndərişini təyin et" ScreenOS səhifələmə seçimini istisna etməmişdir. " close} zaman aşımı {send_user "ScreenOS səhifələmə seçimindən başqa bir şey etmədi / n" poçt göndərişini təyin et "ScreenOS disk bölmə seçimi istisna etmədi." close}} əgər {$ mailfail! = ""} {exec/bin/mail -s $ mailsubject $ mailto << "$ mailfail" exit} send_user "Konfiqurasiya Yüklənir / n" log_file $ basedir/$ logsend "konfiqurasiya / r "gözləyin {" $ prompt "{log_file send_user" / nKonfiqurasiya Yükləndi / n "} zaman aşımı {send_user" / nKonfiqurasiya endirmə zamanı səhv. " mailfail "Konfiqurasiya endirmə zamanı xəta." }} closeif {$ mailfail! = ""} {exec/bin/mail -s $ mailsubject $ mailto << "$ mailfail" exit} fayl ölçüsünü təyin edin [fayl ölçüsü $ basedir/$ log], əgər {$ filesize <= 1024} {send_user "Netscreen konfiqurasiyası çox kiçikdir, zəhmət olmasa / n" poçt göndərişini təyin edin "Netscreen konfiqurasiyası çox kiçikdir, / n" exec /bin /mail -s $ mailsubject $ mailto araşdırın << "$ mailfail" çıxış}#Konfiquranı sil 2 həftədən böyük olan $ basedir -name '*config.txt*' -mtime +14 tapın