İçeriğe geç

Fortigate Otomatik Backup

Fortigate Firewall işletim sistemi mimarisi ve çalışma biçimi sayesinde 1 MB civarında bir konfigurasyon dosyasında tüm ayarları tutan bir yapıya sahip. Donanımsal herhangi bir sorunda veya beklenmeyen, plansız bir konfigurasyon değişikliğinde eski ayarlara dönmek isteyebilirsiniz. Böyle durumlarda cihaz arayüzünden manuel indirebileceğiniz backup’ı veya cihazın içine önceden kaydettiğiniz revisionları kullanabilirsiniz. fortigate otomatik backup

Özellikle büyük yapılarda konfigürasyon hergün değişkenlik gösterebilmektedir. Hergün el ile config backup’ı almak da angarya bir iş olacağından bu işlemin otomatize edilmesi iyi bir fikir olacaktır.

Konfigurasyon dosyasının hergün düzenli olarak bir ftp veya tftp sunucusuna otomatik atılmasını istiyorsanız, bunu aşağıdaki çok kolay ayarla yapabilirsiniz.

Bu yazıda günlük backup almak için kullandığımız yöntemi (Auto-script) çeşitli amaçlar için de kullanabilirsiniz.

Fortigate otomatik backup alma ayarları

Fortigate güvenlik duvarında otomatik backup almak için kullanacağımız özellik System > Advanced Menüsünün altınada bulunan Configuration scripts > Scheduled scripts.

Fortigate güvenlik duvarında bir CLI komutu ile tüm konfigürasyonu bir tftp veya ftp sunucuya hatta cihaz üzerine takabileceğiniz bir USB belleğe anında gönderebilirsiniz.

Bu komutlar aşağıdaki gibidir.

TFTP sunucu için

execute backup full-config tftp <dosya_adi> <sunucu_ip_adresi>[:port]

FTP sunucu için

execute backup full-config ftp <dosya_adi> <sunucu_ip_adresi>[:port] <ftp_kullanıcısı> <ftp_sifresi>

USB bellek için

execute backup full-config usb <dosya_adi>

Yukarıdaki komut satırı dizini bütününü bir text dosyasına kaydedip Settings > Advanced > Configuration Scripts > Upload and Run a new script kısmından yükleyebilirsiniz.

fortigate otomatik yedek

Fakat ben her zamanki gibi bu tip ayarları CLI’dan yapmayı tercih edenlerdenim.  CLI komutları ise aşağıdaki gibi

config system auto-script
    edit "backup_ftp"
        set interval 86400
        set repeat 15000
        set start auto
        set script "execute backup full-config ftp config1.conf 10.0.0.71 kullaniciadi sifre"
    next
end

set interval kaç saniyede bir bu komutun çalışmasını istediğinizi belirttiğiniz kısım. Bizim durumda kaç saniyede bir backup almak istediğinizi belirttiğimiz yer. Bir gün 86400 saniye olduğu için yukarıdaki örnek o şekilde ayarlandı.

set repeat bu komutun kaç kez çalışmasını istediğinizi belirttiğiniz kısım, ben yıllarca devam edecek şekilde ayarladım. 0 yazınca sınırsız kez tekrar ediyormuş ama test etmedim.

set start auto ise bu komutun otomatik olarak çalıştırılabileceği kısım. Dilerseniz manuel seçip sonrasında Setting > advanced altından yüklediğiniz komutu da play butonun basarak dilediğiniz an çalıştırabilirsiniz.

Birkaç gün sonra aynı menü altında Scheduled scripts kısmında otomatik backup için oluşturduğunuz scriptin çalışma sonuçlarını (başarılı olup olmadığı..)  indirip inceleyebilirsiniz.

fortigate scheduled backup

EKSTRA EKSTRA EKSTRA

Backup dosyasını hergün rarlayıp bir dizinde saklamak için

Windows server işletim sistemli bir sunucu kullandığınızı ve FTP için fiezilla kullandığınızı varsayarak;

  • Filezillayı açın

“Edit > users > Shared folders > shared folders kutusundaki add > kullaniciadi “tarafından gönderilen config dosyasının nereye kaydedileceği; Bu uyglumada c:/fortibackup olarak belirlenmiştir.

  • Eğer yüklü değilse sunucuya winrar yükleyin

Aşağıdaki komutun olduğu bir bat dosyası oluşturun

echo off
"C:\Program Files\WinRAR\WinRAR.exe" a -r -M1 -MD4096 -ibck -Y -O+ -ac -ep1 -agYYYY-MM-DD_HH-MM-SS "C:\fortibackup\config_arsiv\" "C:\fortibackup\config1.conf"
Exit

Bu bat dosyasını c:/fortibackup içerisine atın. Bat dosyası çalıştırıldığında C:\fortibackup\config_arsiv\ klasörüne, C:\fortibackup\config1.conf dosyasını sıkıştırıp kopyalayacaktır. Rarlanan dosyanın adına da tarih saat bilgisini ekleyecek.

  • Bu işlemi hergün otomatik tekrarlattırmak için bir task oluşturun

Windows > task scheduler

Sağ click > create basic task , günlük > next > saat belirletin > next > action start a program > Browse deyip > oluşturulan bat dosyasını seçin > Finish finish

Ref: https://help.fortinet.com/cli/fos60hlp/60/Content/FortiOS/fortiOS-cli-ref/config/system/auto-script.htm

Diğer Fortigate yazıları için tıklayın.

fortigate otomatik backup

“Fortigate Otomatik Backup” hakkında 14 yorum

  1. Hocam merhabalar. Öncelikle makaleniz için ellerinize sağlık. Güzel makale olmuş. Yukarıdaki komutları yazıyorum ama bende “Send config file to ftp server via vdom root failed.” hatası veriyor. İki sunucu arasında ping de atıyor.

    1. Selamlar Hocam
      Yazı içerisinde görseli de mevcut olan; Scheduled scripts kısmında otomatik backup için oluşturduğunuz scriptin çalışma sonuçlarını (başarılı olup olmadığı..) indirip o fileda komut neden fail olmuş ipucu bulabilirsiniz.
      Hatanın nedenleri hakkında bir fikrim yok şuan.
      Sağlıkla,

    1. Merhaba Muhammed Hocam,

      Kullandığınız FortiOS versiyonuna göre değişiklik gösterir 6.0 ve üstünde sağ üstten Admin > Configuration > Restore kısmına gelip burada aldığınız backup’ı upload edip OK bastığınız da cihaz reboot olur ve ayağa kalktığında eski backup’taki ayarlarla çalışıyor olur.

      Daha eski bir FortiOS versiyonu kullanıyorsanız System > Maintenance > Backup & Restore kısmına gelip buradan aynı şekilde eski backup’ı upload edip reboot sonrasında eski ayarlarınıza dönebilirsiniz.

  2. hocam ben bunu uyguladım 6.0.x versıyonunda tamam olmuş gıbi goruyorum ama gun içeriinde kayboluyor.

    kaybolduktan sonra cli tarafında kontrol edınce

    cli : config sys auto-script
    show yapınca
    boş geliyor

    1. İlginç bir durum Hocam, daha önce denk gelmedim böyle bir şeye, çözebildiyseniz tecrübelerinizi yazabilirseniz memnun olurum.

  3. Backup dosya adına tarih değişkenini de ekleyebilsek güzel olurdu ama zannediyorum bunu yapamıyoruz ve her yedeği bir öncekinin üzerine yazıyor. Çözüm için bir fikriniz var mı?

    1. Selamlar Hocam, bildiğim kadarıyla ne yazık ki tarih değişkenini atayamıyoruz. Bunu alternatif yollardan çözmek için yazının en altındaki “Backup dosyasını hergün rarlayıp bir dizinde saklamak için” başlıklı kısmı kullanabilirsiniz.
      Saygılar.

  4. Elinize sağlık Alperen hocam.
    Uyguladım , aynen dediğiniz gibi FTP üzerinden başarılı şekilde backup alabildim.
    Ancak backup alırken FTP nin ana dizinine backup alabildim.
    FTP path inde sub folder içine nasıl backup aldırabilirim.
    Örnek bir CLI komutu yazabilmeniz mümkün mü acaba?
    Teşekkürler

    1. Teşekkürler yorumunuz için, Filezilla vb ftp servislerinde belirli bir kullanıcının dosyaları hangi subfolder’a koyabileceği ayarlanabiliyor. Dolayısıyla bu ayarı Fortigate tarafında değil FTP server tarafında yapmanız daha uygun olabilir.

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir