Ana Sayfa / Genel / UniFi – USG Gelişmiş Yapılandırma

UniFi – USG Gelişmiş Yapılandırma

Genel bakış

Bu makale  , config.gateway.json dosyasını kullanarak  Ubnt Security Gateway’de UniFi – USG Gelişmiş Yapılandırma nasıl yapıldığını açıklayacağım.

Notları ve gereksinimleri:  Ubiquiti Desteği config.gateway.json dosyasının oluşturulmasında yardımcı olamaz ve komut satırı yapılandırması için yardım sağlanamaz. Eğer yardım gerekirse,  istediğiniz konfigürasyonda bir gönderide yardım istemek için  link adresini ziyaret etmekten çekinmeyin. Bu makale gelişmiş yapılandırmayı kapsar ve yalnızca ileri düzey kullanıcılar tarafından kullanılmalıdır.

Giriş

UniFi – USG Gelişmiş Yapılandırma , Config.gateway.json web GUI bulunmayan USG özel değişiklikler Ubnt UniFi Controller dosya sistemi oturur ve sağlayan bir dosyadır. Bazı olası özelleştirmeler şöyle olacaktır: siteden siteye VPN’leri ana bilgisayar adlarıyla yapılandırma, belirli trafiği WAN2’ye yönlendiren politika, hatta bir ara birime birden çok IP adresi ekleme. Bu özellikler henüz UniFi Controller GUI’de mevcut değildir, bu nedenle  config.gateway.json  dosyası GUI’de bulunana kadar bu özellikleri tamamlayacaktır.

Config.gateway.json  dosyası üzerinden kişiselleştirmeler yaparken  , sadece kontrolör kullanıcı arayüzü ile gerçekleştirilemeyen özelleştirmeleri girmek en iyisidir. Biçimlendirme yanlışsa, USG’de bir sağlama döngüsü tetiklenir ve USG sağlama döngüsünden çıktığında yeniden başlatma gerçekleşir. Bu noktada  config.gateway.json  dosyası, düzeltmek için düzeltilebilir veya kaldırılabilir.

UYARI:  Bazı kullanıcılar, tam yapılandırma işlevini kullanarak kurtulabileceklerini bulabilir, ancak bu büyük olasılıkla yollarda sorunlara neden olacağı için önerilmez. Config.gateway.json  dosyasındaki bir ayar ile çakışan denetleyici kullanıcı arayüzünde bir ayar değiştirildiğinde, bir hazırlık döngüsü gerçekleşebilir.

Config.gateway.json Dosyasını Oluşturma

Varsayılan olarak, config.gateway.json dosyası mevcut değildir, kullanmak için oluşturulması gerekir.

1. TextEdit veya Notepad ++ gibi bir metin düzenleyicisini kullanarak yeni bir dosya oluşturun.

2. Bir json dosyasının yapısı, kelimeler kadar önemlidir. Braketlerin yanlış yerleştirilmesi, girintiler, satır kesmeleri veya diğer yapısal elemanlar json dosyasını geçersiz kılar. Metnin doğru sözdizimine sahip olduğunu doğrulamak için metni bir json validator üzerinden çalıştırmanız önerilir. JSON Biçimlendirici  web sitesi online bulacaksınız json doğrulayıcılarının birçok seçenek bir örnektir.

3. Dosyanın içeriği doğrulandıktan sonra, config.gateway.json adını vererek ve Denetleyicide depolanan  <unifi_base> / data / sites / site_ID  dizini altına koyarak kaydedin.

Kullanıcı İpucu:  İşletim sisteminize bağlı olarak, dosyayı bu dizinin altına yerleştirmek, sürükle ve bırak kadar basit olabilir veya bir FTP sunucusu kullanmak gerekebilir.

<unifi_base> konumu bir işletim sisteminden diğerine değişecektir. SITE_ID Kontrolör web sayfasında tarayıcınızın URL’ye zaman görülebilir. Orijinal siteye “varsayılan” adı verilir ve oluşturulan her siteye rastgele bir dize atanır. Örneğin, bir sitenin gösterge panosu sayfasının içindeyken URL çubuğunda görüleceği şey budur:

https://127.0.0.1:8443/manage/s/ceb1m27d/dashboard

Yukarıdaki durumda, rastgele ceb1m27d  dizgisi  <unifi_base> / data / sites / altında kullanılacak klasör adıdır Bu nedenle config.gateway.json , <unifi_base> / data / sites / ceb1m27d / ‘nin içine yerleştirilmelidir. 

Kullanıcı İpuçları: 
  • Cloud Key’de .json dosyasının yolunu kurun: / srv / unifi / data / sites / [site adı / varsayılan] /
  • Bir Ubuntu’da .json dosyasının yolunu kurun: / usr / lib / unifi / data / sites / [sit e name / default] /

Config.gateway.json Dosyasını Düzenleme

Güvenlik duvarı veya NAT kurallarını özelleştirmeden önce, UniFi Controller’da Ayarlar> Yönlendirme ve Güvenlik Duvarı> Güvenlik Duvarı altında kullanılan kural numaralarını not edin . Varsayılan güvenlik duvarı kuralları 3001 veya 6001’de başlar ve NAT kuralları da 6001’de başlar (güvenlik duvarı kuralları ile örtüşmez). Config.gateway.json içinde oluşturulan özel kurallar, USG’deki mevcut kurallarla yinelenen kural numaralarına sahip olamaz, ya da bir sağlama döngüsü olacaktır. Özel kuralların mevcut kurallardan önce koyulması önerilir; çünkü düşük sayı iki eşleşen kural arasında kazanacaktır.

 

NOT: Bu  özel  json  dosyasını düzenlerken , her şeyi dahil etmek gerekmez. “Yolun tamamını” yalnızca düzenlediğiniz öğelere eklemelisiniz, yolun dışındaki herhangi bir şey atlanabilir.
Json dosyasındaki her düğümü, diğer klasörlerin içine yerleştirilmiş bir klasör olarak düşünün (ana bölümümüz olan 1. seviye klasörü hariç). Seni seviye 1’den tamamen yapılandırdığın öğeye kadar götüren klasör yolu json dosyasında bulunmalıdır. Aşağıdaki yolu içeren “close” ( düzenleme) yapmak istediğimiz bu örneğe bakın : system> conntrack> timeout> tcp> close .
Seviye 3’te “modüller” in “zamanaşımı” ile birlikte mevcut olduğuna dikkat edin, ancak onu “kapanma” yolunun bir parçası olmadığından json dosyasına dahil etmeyeceğiz. “Tcp” altındaki 5. seviyedeki diğer maddeler ile aynı. Config.gateway.json dosyasında görünmeleri gerekmez çünkü yolun bir parçası değildirler. O zaman başarılı bir değişim, 10’dan 20’ye kadar “close” konfigürasyonunda şöyle görünecektir:
UniFi – USG Gelişmiş Yapılandırma

Aşağıda, EdgeOS biçimlendirmesi kullanılarak yapılandırılmış DNS için bir DNAT kuralının nasıl oluşturulduğuna bir örnek verilmiştir:

1. USG’ye SSH ile bağlanın ve aşağıdaki komutları verin:
yapılandırmak 
set hizmet nat kuralı 1 tipi hedef 
seti servis nat kuralı 1 Gelen-interface eth0 
seti servis nat kuralını tcp_udp 1 protokolünü 
hizmeti nat kuralı 1 hedef bağlantı noktası 53 set 
set servisi nat kuralı 1 iç-adres adresi 10.0.0.1 
içinde ayarlanan servis nat kuralı 1 -Adres portu 53 
taahhüt, kaydet; çıkış
2. Sırada config gösteriliyor. Aşağıdaki komut tüm config'i bir JSON formatında gösterir:

mca-ctrl -t dump-cfg

 Eğer tercih edilirse, yapılandırma da dışa aktarılabilir. Aşağıdaki örnek çıktıyı aşağıdakilere verir  config.txt:

mca-ctrl -t dump-cfg > config.txt

3. config çıktısındaki özel değişikliklerle uygun bölümü bulun, çünkü yukarıdaki örneğimizde şöyle olur:

       "nat": {
                         "rule": { 
                                "1": { 
                                        "destination": { 
                                                "port": "53" 
                                        }, 
                                        "gelen-arayüz": "eth0", 
                                        "inside-address": { 
                                                "address": "10.0.0.1", 
                                                "bağlantı noktası": "53" 
                                        }, 
                                        "protokol":"tcp_udp", 
                                        "yazın": "hedef"
                                },

 

4. Özel kural yukarıdadır, ancak düzeltmek için sonunda bütün kapanış parantezleri (}) yoktur. Config çıktısına baştan bakarsanız, dosyanın doğru okunması için gereken belirli bir format vardır. Bir bölümdeki her düğüm virgülle (,) ayrılmalı ve bölüm bir açılı ayraçla ({) başlamalı ve bir kapanışla (}) bitmelidir. Mevcut formatı dikkatlice izleyin. Yukarıdaki kural config.gateway.json dosyasındaki tek değişiklikse , şöyle görünmesi için düzenlersiniz:

{ 
       "hizmet": { 
                "nat": {
                         "kural": { 
                               "1": { 
                                       "hedef": { 
                                               "liman": "53" 
                                       }, 
                                       "gelen-arayüz": "eth0", 
                                       "iç adres" : { 
                                               "address": "10.0.0.1", 
                                               "bağlantı noktası": "53" 
                                       },
                                       "protokol": "tcp_udp",
                                       "type": "destination" 
                               } 
                       } 
               } 
       } 
}

5. Eklenecek birden fazla bölüm varsa, Güvenlik Duvarı, Servis, VPN diyelim, bir sonraki bölüme başlamadan önce bu bölümün kapanış dirseğini virgül (},) izleyecektir. Bu biçimlendirme ayrıntılarını aşağıdaki örnekte görebilirsiniz.

DNAT kuralı # aralığı 1-4999 arasındadır ve Kaynak / Masquerade kuralı numaraları 5000-9999 arasındadır. Bir multiWAN (yük dengesi) kurulumunda config.gateway.json for WAN2 için bir bağlantı noktası ileri (DNAT) eklemek istiyorsanız , config.gateway.json bu özel NAT kuralında şöyle görünür:

{ 
	"service": { 
		"nat": { 
			"rule": { 
				"4500": { 
					"açıklama": "port_forward_WAN2", 
					"destination": { 
						"address": "100.64.100.100", 
						"port": "22 " 
					}, 
					" gelen-arabirim ":" eth3 ", 
					" iç adres ": { 
						" adres ":" 192.168.1.100 " 
					}, 
					" protokol ":" tcp ", 
					" tür ":" hedef " 
				} 
			} 
		} 
	} 
}

Ve eğer dosyaya ana bilgisayar adları olan bir VPN ekleseydik , config.gateway.json aşağıdaki gibi gözükecekti.
Bölüme başlamadan önce açılma ve kapanma dirseklerine ve ayrıca virgül içeren dirseğe dikkat edin "vpn":
{ 
	"service": { 
		"nat": { 
			"rule": { 
				"4500": { 
					"açıklama": "port_forward_WAN2", 
					"destination": { 
						"address": "100.64.100.100", 
						"port": "22 " 
					}, 
					" gelen-arabirim ":" eth3 ", 
					" iç adres ": { 
						" adres ":" 192.168.1.100 " 
					}, 
					" protokol ":" tcp ", 
					" tür ":" hedef " 
				} 
			} 
		} 
	} , 
	"vpn": { 
		"ipsec":{ 
			"siteden siteye": { 
				"eş": { 
					"yyyy.ignorelist.com": { 
						"kimlik doğrulama": { 
							"id": "xxxx.ignorelist.com"
						}, 
						"yerel adres": "xxxx.ignorelist.com" 
					} 
				} 
			} 
		} 
	} 
}

Test ve Doğrulama

Config.gateway.json dosyasını oluşturduktan sonra kodu doğrulamanız önerilir . Çok sayıda ücretsiz seçenek var, jsonlint.com UBNT destek ekibi tarafından oldukça sık kullanılıyor.

Ekledikten sonra config.gateway.json seçtiğiniz Kontrolör sitesine, sen USG’ye bir “kuvvet hükmünü” çalıştırarak test edebilirsiniz > USG> Yapılandırma> Yönet Cihaz> Kuvvet hüküm UniFi Controller Cihazlar . Bunun yapılması biraz zaman alabilir (30 saniye ila 3 dakika arasında) ve bundan daha uzun süre sağlamada kalırsa, config.gateway.json dosyasında bir biçimlendirme hatası olabilir ve daha önce belirtilen bir sağlama döngüsünü yaşıyorsanız, . Kontrol edebilirsiniz server.logdenetleyici ve aramak commit error. Günlük dosyalarında yeni özelleştirilmiş yapılandırmanın sağlanmasında neyin yanlış gittiğini genellikle bulabilirsiniz.

Kullanıcı İpucu:  json dosyasının geçerliliğini test etmenin kolay bir yolu: python -m json.tool config.gateway.json

Değişiklikleri Silme veya Önceki Duruma Dönme

Belirli bir gelişmiş yapılandırmayı kaldırmak için, config.gateway.json dosyasındaki bu yapılandırma ile ilgili bölümü silmeniz yeterlidir. Config.gateway.json dosyasında oluşturulan tüm gelişmiş konfigürasyonları tamamen kaldırmak için dosyayı silin veya yeniden adlandırın. Bu, tüm manuel değişiklikleri geçersiz kılar. USG, UniFi Controller içerisinde bulunan mevcut yapılandırma ile sağlanacaktır.

Çalışmakta olan config.gateway.json dosyasını düzenlerken en iyi yöntem bir yedekleme oluşturmaktır. Config.gateway.json dosyasına ek değişiklikler eklemeniz gerekirse, geçerli dosyayı config.gateway.json.old olarak yeniden adlandırın, temelde bir yedek oluşturun ve mevcut ve yeni tüm değişiklikleri config.gateway adlı yeni bir dosyaya kopyalayın. .json. Bu şekilde, bir “taahhüt” hatası veya ön hazırlık döngüsüyle sonuçlanan herhangi bir hata olursa, config.gateway.json dosyasını silebilir ve config.gateway.json.old dosyasından başlayarak tekrar deneyebilirsiniz.

Hakkında admin

Bu habere de bakabilirisiniz

Ağ İletişimine Giriş – Dinamik Ana Bilgisayar Yapılandırma Protokolü (DHCP)

Dinamik Ana Bilgisayar Yapılandırma Ağ İletişimine Giriş – Dinamik Ana Bilgisayar Yapılandırma Protokolü (DHCP) DHCP …

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir