Merhaba arkadaşlar, ben Cem Zengin.
Herhangi bir donanım arızası, veri bozulması veya hatalı yapılandırma durumunda en kritik can kurtaran, güncel konfigürasyon yedeğidir. FortiGate yedeklerini el ile (manual) almak kolay olsa da, bunu unutma riski her zaman mevcuttur. En sağlıklı yöntem, yedekleme işlemini otomatikleştirmek ve yedekleri güvenli bir uzak sunucuda (SFTP / FTP) depolamaktır.
Bu yazıda, FortiGate CLI Scripting ve CLI Scheduler özelliklerini kullanarak, cihazımızın konfigürasyon yedeğini her gün otomatik olarak belirlediğimiz bir SFTP sunucusuna nasıl yükleyeceğimizi göstereceğim.
1. Hazırlık ve SFTP Sunucu Bilgileri
Yapılandırmaya başlamadan önce yedeklerin aktarılacağı uzak sunucunun bilgilerini hazırlamalısınız:
- SFTP Sunucu IP:
192.168.10.250(veya dış dünyada bir bulut sunucu IP’si) - Kullanıcı Adı:
fortibackup - Şifre:
GucliYedekSifresi123 - Port:
22(SFTP varsayılan olarak SSH portunu kullanır) - Yedek Dizin Yolu:
/backups/fortigate/
2. CLI Script ile Yedekleme Komutunun Test Edilmesi
Yedeklemeyi otomatikleştirmeden önce, komutumuzun elle çalıştırıldığında başarılı bir şekilde SFTP sunucusuna ulaşıp yedek yükleyebildiğini doğrulamamız gerekir.
FortiGate CLI konsolunu açın ve aşağıdaki komutu kendi sunucu bilgilerinize göre düzenleyerek çalıştırın:
execute backup config sftp /backups/fortigate/fortigate-backup.conf 192.168.10.250:22 fortibackup GucliYedekSifresi123
Komut Parametreleri:
execute backup config sftp: Konfigürasyon yedeğini SFTP protokolüyle yedekleyeceğimizi belirtir./backups/fortigate/fortigate-backup.conf: Sunucu üzerindeki klasör yolu ve dosya adı.192.168.10.250:22: SFTP sunucu IP adresi ve portu.fortibackup: SFTP kullanıcı adı.GucliYedekSifresi123: SFTP şifresi.
Eğer komut çalıştıktan sonra hata almadıysanız ve SFTP sunucunuzdaki dizinde dosyanın oluştuğunu gördüyseniz, otomatik zamanlayıcı (Scheduler) adımına geçebiliriz.
3. CLI Scheduler ile Otomatik Yedekleme Tanımlaması
FortiGate üzerinde arayüzde (GUI) bir zamanlayıcı menüsü bulunmaz. Bu işlemi CLI üzerinden cron job benzeri çalışan system auto-script ve system partition veya doğrudan system auto-script yapılandırmasını kullanarak gerçekleştirebiliriz.
Her gün gece saat 03:00‘da çalışacak otomatik yedekleme görevini oluşturalım:
config system auto-script
edit "Daily_SFTP_Backup"
set interval 86400 # 24 saatte bir çalışması için saniye cinsinden değer (24 * 60 * 60)
set repeat 0 # Süresiz tekrarlanması için 0 yapıyoruz
set start auto
set script "execute backup config sftp /backups/fortigate/fortigate-%%date%%.conf 192.168.10.250:22 fortibackup GucliYedekSifresi123"
next
end
Önemli Ayrıntı: Dinamik Dosya İsmi %%date%%
Dosya isminin her gün aynı olmaması ve geçmiş yedeklerin üzerine yazılmaması için dosya adına %%date%% değişkenini ekliyoruz. FortiGate script’i çalıştırdığında bu alanı o günün tarihi (YYYY-MM-DD formatında) ile otomatik olarak değiştirecektir. Örneğin dosya ismi sunucuda fortigate-2026-05-31.conf olarak görünecektir.
4. Script Durumunu İzleme ve Manuel Tetikleme
Yazdığımız otomatik script’in durumunu kontrol etmek ve çalışıp çalışmadığını doğrulamak için şu komutları kullanabiliriz:
- Script Yapılandırmasını İncelemek:
show system auto-script Daily_SFTP_Backup - Script’i Hemen Test Amaçlı Manuel Tetiklemek:
execute auto-script run Daily_SFTP_Backup - Script Çalışma Loglarını (Çıktılarını) Görmek:
Otomatik çalışan script’in hata verip vermediğini anlamak için üretilen logları şu komutla okuyabiliriz:
execute auto-script log show Daily_SFTP_Backup
5. Güvenlik Tavsiyesi: SFTP Kullanıcısının Yetkilerini Kısıtlama
Yedekleme dosyasının içinde şifrelenmiş de olsa cihazın kritik tüm hash ve konfigürasyon bilgileri yer alır. Ayrıca script içinde SFTP sunucunun şifresi açık metin (clear-text) olarak yazılmaktadır.
Güvenliği artırmak için:
- SFTP sunucusu üzerinde yedekleme yapan
fortibackupkullanıcısının sadece yedek klasörüne yazma yetkisi olmasını sağlayın, sistem kabuğuna (shell/bash) erişimini engelleyin (nologin). - Mümkünse bu yedekleme trafiğini ayrı bir yönetim VLAN’i (Management VLAN) üzerinden geçirin.
Otomatik yedekleme adımlarında aldığınız hataları yorumlarda belirtebilirsiniz. Bir sonraki teknik makalede görüşmek üzere!