Bir önceki makalede kendi localimizden farklı bir sunucuya bağlanmayı göstermiştim. Bu makalede ise localimizde bulunan SSMS arayüzünden SQL SERVER‘ın kurulu olduğu(S1) sunucuya bağlanmaya çalışacağız. Bu makalenin önceki yazdığım makaleyle bağlantılı olduğunu düşünerek, bu yazıyı okuyorsanız eğer belirtilen makaleyide okumanız anlamanız açısından daha iyi olacaktır.
Sırasıyla adımlarımız yapalım ve farklı senaryolar eşliğinde:
- Adım: Localimizde bulunan SSMS’den uzak sunucuya bağlanmayı deneyelim.


Eğer SQL SERVER dinamik veya statik port kullanıyorsa ve browser servisi açıksa otomatikmen localde bulunan SSMS’den yukarıda görüldüğü gibi sql server’a bağlantı gerçekleştirilir.(portun bir önemi yoktur her zaman bağlanır. Çünkü browser servisi dışardan gelecek connection’lar için bu porto öğretir.) AMA SQL SERVER’ımız dinamik veya statik port kullanıyorsa(sql server default portuda dahil 1433) ve browser servisi kapalıysa bağlantı hatası alınır ama bazı durumlarda browser servisi kapalıda olsa bağlanır. Çünkü önceden tanımlanmış olan porto Sql server’a öğretir browser servisi kapanmadan önce ve Bu durumda browser servisi kapalı olsa bile bağlanır. Bağlanamayacağı senaryo ise browser servisinin kapalı olduğu durumda servis restart olursa veya port manuel olarak değiştirilirse Bağlanmaz.
Ayrıca browser servisi default instancelar dışında named instancelar için bir yönlendirme görevi görür ve gelen bağlantıya otomatikmen sql server portunu öğretir ve bağlantı başarılı bir şekilde yapılır. Aşağıdaki resimde browser servisi kapalı olduğu ve dinamik port kullandığı için bu hatayı aldık.

Aşağıdaki resimde browser servisi açıkken dinamik bir port tanımlandıktan sonra browser servisi kapatılırsa ve dışarıdan bir connection gelirse yine başarılı bir bağlantı gerçekleştirilir.(Portomuzu değiştirene kadar bağlantımız başarılı olur)Resimler üzerinden görelim.

Portomuzu değiştirdikten sonra servisi yeniden başlattık bu süre zarfında browser servisimiz açık

Port tanımlaması yaptıktan sonra browser servisimizi kapatıp tekrardan localde bulunan SSMS’den bağlama çalışalım.


Connect dedikten sonra bağlantımız başarılı bir şekilde gerçekleşti. Çünkü browser servisi kapanmadan önce öğretti hangi porttan dış bağlantı sağlanacağını.

Yukarıdaki resimdeki aynı işlemleri sitatik port içinde yapınca aynı sonucu elde ederiz.
Browser servisi kapalı olduktan sonra herhangi bir port değişikliği yaptığımızda sql server’a bağlanamayacağız.


Bu porto ayarlamasını yaptıktan sonra servisi restart etmeliyiz. Bu işlemleri yaptıktan sonra tekrar SSMS‘den bağlanmaya çalışalım.

Ne demiştik browser servisi gelen connection’a sql server’ın hangi porttan olduğunu öğretir şimdi port numarasını kendimiz belirttiğimizde bağlantı sağlanır. Browser servisimiz kapalı


Browser servisimizi tekrardan açarsak ve browser servisi açıkken bir bağlantı yaptıktan sonra tekrar kapatırsak browser servisi bu porto öğrenir(1433) ve bundan sonra kapalı olsa bile bağlantıları aynı port üzerinden sağlar.




Önceden bağlantımızı sağladık tekrar kapattıktan sonra bağlanmaya çalışalım ve sonuç olarak bağlantımız başarılı oldu.

Buraya kadar özet olarak ne gördük browser servisinin dış taraftan gelen connectionlara sql servisinin port numarasını öğrettiğini browser servisi kapalı olursa dış tarafta kullanıcının port numarasını kendisinin belirtmesi gerektiğini yoksa uzaktan SSMS bağlantısının sağlanamayacağını görmüş olduk.
Browser servisimizi açmak istemiyorsak(farklı saldırılar sonucu sql servisinin port numarası öğrenilebilir.) S1 sunucusu üzerinde ilgili port veya tüm portları firewall’den bir kural tanımlayıp açarak dışarıdan bağlantı sağlayabiliriz ben aşağıdaki örnekte tüm portları açtım siz isterseniz sql server’a tanımladığınız portu sql configuration manager tcp/ip bölümünden öğrenip firewall’daki kuralı ona göre yapabiliriz. Şimdi adım adım işlemlerin nasıl olduğunu resimlerle gösterelim.
1.ADIM: Windows arama çubuğuna resimdeki isim yazılır.

2.ADIM: Gelen bağlantılar için bir kural tanımlanır.

3.ADIM: Port konfigurasyonu yapacağımız için port şeçilir.

4.ADIM:IP üzerinden haberleştiğimiz için TCP işaretlenir ve tüm portlara izin ver seçeneği aktif edilir eğer sadece ilgili porttan gitmesini istersek Specific local ports işaretlenir .

5.ADIM

6.ADIM

7.ADIM

8.ADIM: Tanımlamış olduğumuz kural üzerinden geldiğine emin olmak için browser servisini kapatıyorum

9.ADIM: Localimizde bulunan SSMS arayüzünde bağlanma

10.ADIM: Bağlantının gerçekleştiğini görmüş olduk.

Bu bağlantı kuralını sildikten sonra tekrar bağlanmaya çalıştığımızda hata mesajıyla karşılaştık. Yukarıdaki tüm portlar için yapılan işlemleri sadece ilgili port içinde yapabiliriz.

Başka makalede görüşmek dileğiyle.
“İlminle övünme, Şeytan’a bak!” Araf-12
3 thoughts on “Local’de Bulunan SSMS Üzerinden MSSQL SERVER’a Bağlanma”