Tl; Dr
Çok örnekli bir SQL Server'da (Windows Server'daki her SQL Server örneğinin kendi IP adresi vardır) ayrılmış bir IP adresi ve bağlantı noktası (162.xxx.xxx.51: 1433) bulunan bir SQL Server örneği (SQLSERVER01-i01) var ) tek bir Windows sunucusunda (SQLSERVER01 / 162.xxx.xxx.50) çalışır.
Ayrıca, kendi IP adresi (168SxxVER.xxx.71: 1433) olan ve kendi IP adresiyle (168) farklı bir Windows sunucusunda (SQLSERVERRS01) çalışan özel bir Reporting Services örneğim (SQLSERVERRS01-i01) var. .xxx.xxx.70).
Özel Reporting Services sunucusunda, APPL1
üzerinden http://SQLSERVERRS01-i01:80/Reports_APPL1
veya aracılığıyla erişilebilen bir uygulama vardır http://SQLSERVERRS01:80/Reports_APPL1
.
SSRS *:80
, ana bilgisayar üstbilgileri için Raporlama Hizmetleri Yapılandırması'ndaki yapılandırma nedeniyle her iki isteği de alır .
Her IP aralığı arasında birden fazla güvenlik duvarımız var, yani her IP-IP veya IPrange-IP bağlantısı için belirli bir kural için başvurmamız gerekiyor. Ancak, iki sunucu söz konusu olduğunda, güvenlik, güvenlik duvarında her zaman IP'den IP'ye bir kural olması gerektiğini belirler.
Soru
(ekran görüntüsüne göre daha aşağıda)
Reporting Services sunucusu veri almak için SQL Server örneğine (162.xxx.xxx.51 üzerinde) bağlandığında, her zaman Windows sunucusunun temel IP adresiyle (168.xxx.xxx.70 / tercih edilir) bir bağlantı kurar mı? ) SSRS'nin üzerinde çalıştığı veya SQL Server Reporting Services örneğinin (168.xxx.xxx.71) IP adresini (bazen) kullanacak mı?
Bu, IP-IP yaklaşımı kullanılarak güvenlik duvarı kuralının yapılandırılmasıyla ilgilidir. Ya 1433 numaralı bağlantı noktası üzerinden 168.xxx.xxx.71 - 162.xxx.xxx.51 bağlantısını veya üzerinden 168.xxx.xxx.70 - 162.xxx.xxx.51 bağlantısını tanımlayan bir kurala başvurmam gerekecek bağlantı noktası 1433.
Şu anda her iki güvenlik duvarı kuralına da başvururum.
Bonus soru
Reporting Services sunucusunu özel bir IP adresiyle iletişim kuracak şekilde yapılandırabilir miyim? Bu durumda 168.xxx.xxx.71 adresi ile.
Aradığım cevaplar
Güvenlik duvarı yapılandırmasının nasıl optimize edileceği veya ağlarımız için bir imar kavramının nasıl uygulanacağı konusunda tavsiye istemiyorum. (Zaten boru hattında). Ayrıca, aynı sunucuda SQL Server ve SSRS'ye sahip olmanın sorunlarımı çözeceğini öne süren geri bildirimle ilgilenmiyorum. Bunu biliyorum ve memnuniyetle yapardım ama SSRS bileşenleri ile birlikte çalışması gereken üçüncü taraf yazılımlar için.
İşe yarıyor
SSRS ve SQL Server örneği arasında her iki güvenlik duvarı kuralını da uygularsam sahip olduğum yapılandırma çalışır.
168.xxx.xxx.71 --> 162.xxx.xxx.51 : 1433
168.xxx.xxx.70 --> 162.xxx.xxx.51 : 1433
Bir güvenlik duvarı kuralıyla güvenli bir şekilde azaltmak ve her şeyin hala çalışmasını sağlamak istiyorum. (Bkz ayrıca aşağı ekran görüntüsü)
Düzenleme: Şimdiye kadar okudum makaleler sadece ikinci kurala gereksinim düşündüren, ama garantisi yoktur.
Daha önce danıştığım makaleler
SQL Server Yükleme
Tabanı makalesi için Güvenlikle İlgili Konular .Windows Güvenlik Duvarı'nı SQL Server Erişimine İzin Verecek Şekilde Yapılandırma
Bu makale, SQL Server için güvenlik duvarı yapılandırmasına ilişkin diğer tüm makalelere işaret etmektedir.Veritabanı Altyapısı Erişimi için Windows Güvenlik Duvarı Yapılandırma
IP adresi sözcüğü kullanılmaz.Güvenlik Sunucusunu Rapor Sunucusu Erişimi için Yapılandırma
Bu makale belirtildiği gibi oldukça ilginçti:Harici bilgisayarlarda SQL Server ilişkisel veritabanlarına erişiyorsanız veya rapor sunucusu veritabanı harici bir SQL Server örneğindeyse, harici bilgisayarda 1433 ve 1434 numaralı bağlantı noktalarını açmanız gerekir.
5. ve 6. Maddeler bana James (dba.se) tarafından verilmiştir. Şu anda en uygun cevaplar gibi görünüyorlar. Bununla birlikte, bir makalenin birden fazla NIC kullanımından bahsetmesine biraz şüpheliyim, oysa kendisine atanan birden fazla IP'ye sahip tek bir NIC var. Tom (dba.se) aynı zamanda tavsiye ve genel yorumlar da yaptı.
Neden burada ve dba.stackexchange.com'da değil
Sorunun karmaşık yapısı nedeniyle ilk başta bu soruyu serverfault.com'da yayınlamakta isteksizdim. Sorunun her ikisi de SQL Server'a özgü olma eğilimindedir, aynı zamanda Windows Server'a özgü olma eğilimindedir. Sonunda buraya göndermeye karar verdim, çünkü bir Windows Server IP işleme şeyidir (daha iyi kelimelerin kaybı için).
Bir moderatör dba.stackexchange.com'da daha iyi bir yanıt alacağımı düşünüyorsa, lütfen soruyu oraya taşıyın.
Uzun Açıklama
Ortamımızda birden fazla SQL Server örneği ve birden fazla IP ayarı barındıran Windows sunucularımız var. Karmaşık güvenlik duvarı yapılandırmaları, özel SQL Server Raporlama Servisleri (SSRS) sunucuları ekliyoruz ve buna benzer bir ortam buluyoruz:
Temel olarak, tek bir IP adresinde en fazla 15 (on beş) SQL Server örneği çalıştıran bir Windows Sunucumuz olabilir. Aynısı, özel Raporlama Servisleri örneği için de geçerlidir.
Güvenlik Duvarı Kuralları
Farklı IP aralıkları şu anda bölge olarak yapılandırılmamıştır, yani her güvenlik duvarı kuralını bağımsız olarak IP-IP veya IPrange-IP kuralı olarak yapılandırmamız gerekir. İki sunucu söz konusu olduğunda, güvenlik her zaman IP-IP kuralı olması gerektiğini belirtir. Her SQL Server örneğinin, bu sunucudan sunucuya veya istemciden sunucuya bağlantı olması gibi iletişimde yer alan güvenlik duvarları için kendi kuralları vardır. Güvenlik duvarı kuralı başvurusu şu anda dört ila altı haftalık bir bekleme süresine tabidir. Güvenlik duvarı kurallarının miktarının azaltılması, ağ güvenlik ekibindeki baskı miktarını azaltacaktır.
SQL Server Örneği IP Yapılandırması
Bir SQL Server örneğini yalnızca özel bir IP ve bağlantı noktasında alacak şekilde yapılandırmak, SQL Server Configuration Manager yardımcı programındaki bazı ayarları değiştirerek gerçekleştirilir. İlk adım SQL Server Yapılandırma Yöneticisi'ni başlatmak ve sol bölümde SQL Server Ağ Yapılandırması | ÖrnekAdı için Protokoller . Sol bölmede TCP / IP Protokol Adı'nı sol tıklatın ve Protokolü etkinleştirin . Ardından protokolü tekrar sol tıklayın ve TCP / IP Özellikleri penceresini açın.
Ardından Protokol kaydında aşağıdaki ayarların yapıldığından emin olun :
Enabled : Yes
Listen All : No
In IP Adresleri (o 168.xxx.xxx.71 olurdu bu örnekte Raporlama Hizmetleri sunucusu için örneğin) Söz konusu IP adresi için aşağıdaki ayarları kontrol kayıt
Active : Yes
Enabled : Yes
IP Address : 168.xxx.xxx.71
TCP Dynamic Ports :
TCP Port : 1433
Not: TCP Dinamik Bağlantı Noktaları ayarının yalnızca 0 (sıfır) değil boş olması önemlidir .
Artık veritabanı bağlantılarını 1433 numaralı bağlantı noktasını kullanarak 168.xxx.xxx.71 üzerinde toplayacak bir SQL Server örneğine sahipsiniz.
SQL Server Örnek Özeti
SQL Server Tarayıcı hizmeti çalışmıyor ve her bir SQL Server örneği, 1433 numaralı bağlantı noktasında yalnızca kendi IP adresini kullanacak şekilde yapılandırılmış. GENERAL adlı bir SQL Server örneği, ana bilgisayar adı SQLSERVER01 ve iki IP adresi 162.xxx verildiğinde .xxx.50 (ana bilgisayar) ve 162.xxx.xxx.51 (SQL Örneği) Aşağıdaki yapılandırma öğeleriyle karşılaşacağım:
Windows Server : SQLSERVER01
Windows Server IP : 162.xxx.xxx.50
SQL Server Instance : SQLSERVER01-i01 (DNS A record)
SQL Server Instance : GENERAL (can only be used on the host itself)
SQL Server IP/Port : 162.xxx.xxx.51:1433
SQL Server 162.xxx.xxx.50: 1433 için SQL Server Configuration Manager yardımcı programında bu IP adresini dinleyecek şekilde yapılandırılmadığından SQL Server isteklerini almayacaktır. SQL Server yalnızca SQLSERVER01-i01 (bağlantı noktası 1433'te) veya 162.xxx.xxx.51,1433 için istekleri alır.
SQL Server Raporlama Servisleri Örneği Özeti
SQL Server Tarayıcı hizmeti çalışmıyor ve her bir SQL Server Raporlama Hizmetleri örneği, 1433 numaralı bağlantı noktasında yalnızca kendi IP adresini kullanacak şekilde yapılandırıldı. SQLSERVERRS01 ana bilgisayar adına sahip bir Windows sunucusu olan GENERAL adlı bir SQL Server Raporlama Hizmetleri örneği verildi SSRS adında APPL1
ve iki IP adresi 168.xxx.xxx.70 (ana bilgisayar) ve 168.xxx.xxx.71 (SQL Örneği) üzerinde aşağıdaki yapılandırma öğeleri ile karşılaşacağım:
Windows Server : SQLSERVERRS01
Windows Server IP : 168.xxx.xxx.70
SQL Server Instance : SQLSERVERRS01-i01 (DNS A record)
SQL Server Instance : GENERAL (can only be used on the host itself)
SQL Server IP/Port : 168.xxx.xxx.71:1433
Reporting Services : http://sqlserverrs01-i01/Reports_APPL1
http://sqlserverrs01/Reports_APPL1
SQL Server Yapılandırma Yöneticisi yardımcı programında bu IP adresini dinleyecek şekilde yapılandırılmadığından, SQL Server 168.xxx.xxx.70: 1433 için istekleri almayacaktır. SQL Server yalnızca SQLSERVER01-i01 (bağlantı noktası 1433'te) veya 162.xxx.xxx.71,1433 için istekleri alır.
SSRS , ana bilgisayar üstbilgileri için Reporting Services Yapılandırmasında *: 80 yapılandırması nedeniyle http: // sqlserverrs01-i01 / Reports_APPL1 veya http: // sqlserverrs01 / Reports_APPL1 için istekleri alır.
Umarım zamanını bir cevap yazarak geçirmek isteyen herkes için yeterli bilgi sağladım ve teknik detaylarınızı ve bağlantılarınızı dört gözle bekliyorum.
StackEdit ile yazılmıştır ve daha sonra stackexchange uyumlu olacak şekilde manuel olarak değiştirilmiştir.
Tarih
Düzenleme 1 : İlk Sürüm
Düzenleme 2 : Okunabilirlik için yeniden biçimlendirildi. SF / DB açıklaması kaldırıldı. Windows Server
Düzenleme 3 için ana bilgisayar adı eklendi : Güvenlik duvarı kuralları listesindeki yanlış IP adresleri düzeltildi.
Edit 4 : Hosting kelimesini bazı yerlerde çalışacak şekilde değiştirdi (sanallaştırılmamış bir ortam). Bir kez cümleye IP adresi eklendi
Edit 5 : Daha önce danıştığım ve desteklediğim makalelerin bir listesi eklendi
Edit 6 : Cleaned History