国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費(fèi)電子書(shū)等14項(xiàng)超值服

開(kāi)通VIP
為SQL Server使用非標(biāo)準(zhǔn)的端口

為SQL Server使用非標(biāo)準(zhǔn)的端口

你正在使用標(biāo)準(zhǔn)的端口號(hào)1433來(lái)連接SQL Server 2005嗎?你考慮過(guò)設(shè)置SQL Server來(lái)監(jiān)聽(tīng)一個(gè)不同于1433的端口號(hào)嗎?我曾經(jīng)就是這樣。在這篇文章里,我將討論我是怎樣做的,以及我在設(shè)置SQL Server 2005去使用一個(gè)非標(biāo)準(zhǔn)的端口號(hào)時(shí)遇到的問(wèn)題。

使用默認(rèn)端口號(hào)的問(wèn)題

當(dāng)你安裝SQL Server時(shí),默認(rèn)實(shí)例是監(jiān)聽(tīng)1433端口號(hào)的。眾所周知,這是默認(rèn)的端口號(hào)。因此,通常你會(huì)看到來(lái)自黑客對(duì)1433端口的攻擊。所以為了最小化黑客通過(guò)默認(rèn)端口號(hào)來(lái)訪問(wèn)的潛在的威脅,你應(yīng)該考慮使用一個(gè)不同于1433的非標(biāo)準(zhǔn)的端口號(hào)。

當(dāng)安裝一個(gè)命名實(shí)例后,在它啟動(dòng)的時(shí)候默認(rèn)使用的是動(dòng)態(tài)決定的端口號(hào)。因此,命名實(shí)例每次啟動(dòng)時(shí),都有可能監(jiān)聽(tīng)不同的端口號(hào)。這會(huì)有些問(wèn)題,特別是如果你需要通過(guò)防火墻來(lái)訪問(wèn)的話。既然端口號(hào)可以動(dòng)態(tài)變化,那么你就不能使用防火墻規(guī)則來(lái)限制用特定端口號(hào)訪問(wèn)你的SQL Server。因此,為了限制對(duì)你的SQL Server的訪問(wèn),你需要配置SQL Server去監(jiān)聽(tīng)一個(gè)特定的端口。

怎樣配置SQL Server去監(jiān)聽(tīng)特定的端口

既然默認(rèn)端口號(hào)是易受黑客攻擊的,而命名實(shí)例又是動(dòng)態(tài)的設(shè)置端口號(hào),那么你應(yīng)該考慮指定你的每一個(gè)SQL Server實(shí)例去監(jiān)聽(tīng)一個(gè)特定的端口。SQL Server使用一個(gè)特定的端口提供了更安全的環(huán)境。那么怎樣去配置SQL Server 2005使其監(jiān)聽(tīng)一個(gè)不同的端口呢?為了實(shí)現(xiàn)這個(gè)目標(biāo),SQL Server提供了SQL Server配置管理器工具。


為了啟動(dòng)配置管理器,單擊開(kāi)始→程序→Microsoft SQL Server 2005→配置工具→SQL Server 配置管理器。一旦你啟動(dòng)了SQL Server配置管理器,你就可以打開(kāi)SQL Server 2005網(wǎng)絡(luò)配置的節(jié)點(diǎn)。你這樣做完后,就會(huì)看到類似下面的屏幕:





這里你可以看到我有4個(gè)不同的SQL Server實(shí)例在運(yùn)行。一個(gè)是默認(rèn)實(shí)例,叫做MSSQLSERVER,一個(gè)是Express版,叫做SQLEXPRESS,接著我有兩個(gè)命名實(shí)例,叫做SERVER1SERVER2。


為了改變這些實(shí)例的端口配置,我將單擊一個(gè)實(shí)例,這樣會(huì)在右邊顯示可用的不同協(xié)議。下面是我單擊實(shí)例SERVER2時(shí)的屏幕快照:





你可以看到我啟動(dòng)了兩個(gè)協(xié)議,“Shared Memory”和“TCP/IP”。為了改變端口設(shè)置,在右邊欄里右擊TCP/IP協(xié)議,然后選擇屬性選項(xiàng)。當(dāng)你做完后,將顯示下面的屏幕快照:





在這個(gè)屏幕里,你可以看到“全部監(jiān)聽(tīng)”設(shè)置為“是”。這意味著該實(shí)例將監(jiān)聽(tīng)所有的IP地址。當(dāng)你安裝SQL Server實(shí)例時(shí),監(jiān)聽(tīng)所有的IP地址是默認(rèn)設(shè)置。如果你想讓SQL Server僅監(jiān)聽(tīng)一個(gè)特定的IP地址的話,那么你需要把“全部監(jiān)聽(tīng)”設(shè)置改為“否”。


為了指定你想要讓SQL Server監(jiān)聽(tīng)的特定端口,你需要單擊上面屏幕的“IP地址”標(biāo)簽。當(dāng)你做完后,會(huì)顯示類似下面的屏幕:





你可以看到IP1IP2是禁用的(“已啟用”選項(xiàng)設(shè)置為“否”),在IPALL里的TCP動(dòng)態(tài)端口設(shè)置為1317。由于SERVER2是命名實(shí)例,在實(shí)例啟動(dòng)的時(shí)候IP地址是動(dòng)態(tài)設(shè)置的,端口1317正好是我的命名實(shí)例目前使用的端口號(hào)。如果我停止該實(shí)例并重啟,那么該實(shí)例在重啟的時(shí)候可能使用一個(gè)不同的端口,因?yàn)槎丝谔?hào)是動(dòng)態(tài)設(shè)置的。當(dāng)TCP動(dòng)態(tài)端口選項(xiàng)被設(shè)置為0時(shí),它表示數(shù)據(jù)庫(kù)引擎正在監(jiān)聽(tīng)動(dòng)態(tài)端口。


為了確保命名實(shí)例使用一致的端口號(hào),或者你想要為默認(rèn)實(shí)例改變默認(rèn)端口號(hào),你所需要做的就是指定一個(gè)特定的端口號(hào)來(lái)讓你的SQL Server實(shí)例去監(jiān)聽(tīng),就象下面這樣:





這里我已經(jīng)指定了我使用的端口8484作為我的命名實(shí)例SERVER2的端口號(hào)。我只需在TCP端口選項(xiàng)里輸入這個(gè)端口號(hào)就行了。

當(dāng)使用特定端口設(shè)置時(shí)的客戶端連接

客戶端連接到一個(gè)使用非標(biāo)準(zhǔn)、依賴于你的安裝設(shè)置的SQL Server實(shí)例時(shí),可能會(huì)有一些問(wèn)題,尤其是在你沒(méi)有運(yùn)行SQL Server Browser服務(wù)的時(shí)候??蛻舳擞?/font>3種方法連接到一個(gè)使用特定非標(biāo)準(zhǔn)端口號(hào)的實(shí)例。


第一種方法是運(yùn)行SQL Server Browser服務(wù)。當(dāng)這個(gè)服務(wù)運(yùn)行的時(shí)候,它會(huì)通知客戶端要求連接的實(shí)例正在使用的端口號(hào)。這可以避免客戶端在連接一個(gè)SQL Server實(shí)例時(shí)必需知道端口號(hào)的情形。如果你想要更安全的環(huán)境,那么你不要運(yùn)行SQL Server Browser服務(wù)。通過(guò)不運(yùn)行SQL Server Browser服務(wù),客戶端為了連接SQL Server就需要在連接字符串里指定正確的端口號(hào)。


第二個(gè)方法是在客戶端機(jī)器上創(chuàng)建一個(gè)SQL Server的別名。通過(guò)運(yùn)行SQL Server配置管理器工具可以在客戶端機(jī)器上創(chuàng)建一個(gè)別名。在SQL Native Client節(jié)點(diǎn)下,右擊別名然后選擇新建別名。做完后會(huì)出現(xiàn)新建別名對(duì)話框。在該對(duì)話框里,你可以創(chuàng)建一個(gè)別名,并指定該別名的實(shí)例和端口號(hào)。下面這個(gè)屏幕快照顯示了我是怎樣為我的指定了使用端口號(hào)8484來(lái)連接的命名實(shí)例SERVER2創(chuàng)建別名的。





注意我已經(jīng)指定了別名為SERVER2,它使用的端口號(hào)是8484,并且服務(wù)器選項(xiàng)的值為SERVER2。創(chuàng)建該別名來(lái)把別名SERVER2與端口號(hào)為8484的服務(wù)器SERVER2相關(guān)聯(lián)。一旦我指定這些信息,我就可以單擊確定按鈕或者單擊應(yīng)用再單擊確定按鈕來(lái)創(chuàng)建別名了。


最后一個(gè)方法是在連接字符串里通過(guò)編程來(lái)指定端口號(hào)。由于我不是一個(gè)連接字符串的大師,所以我不敢保證所有不同的方法都能達(dá)到這個(gè)目標(biāo),但有一個(gè)方法可行,就是在連接字符串里連同服務(wù)器名稱一起指定端口號(hào)。這可以通過(guò)在服務(wù)器名稱后立即輸入“,<端口號(hào)>”來(lái)實(shí)現(xiàn)。所以對(duì)于我上面的例子SERVER2,我將有一個(gè)類似下面的連接字符串:

Data Source=SERVER2,8484;Initial Catalog=AdventureWorks

注意我已經(jīng)在連接字符串的Data Source參數(shù)里的服務(wù)器名稱的后面添加了“,8484”。

使用非標(biāo)準(zhǔn)端口的問(wèn)題

我發(fā)現(xiàn)在使用非標(biāo)準(zhǔn)端口或?yàn)槊麑?shí)例指定一個(gè)特定端口是沒(méi)有什么真正的問(wèn)題的。我曾經(jīng)遇到過(guò)的最大問(wèn)題是程序員不斷的過(guò)來(lái)對(duì)我說(shuō)“我不能連接到SQL Server”這一事實(shí)。然后當(dāng)我和他們一起診斷連接問(wèn)題的時(shí)候,我們發(fā)現(xiàn)他們?cè)谠噲D連接的時(shí)候忘記了連同服務(wù)器名稱一起指定端口號(hào)。因此,如果你計(jì)劃使用非標(biāo)準(zhǔn)的端口號(hào),那么你需要確保你清楚地解釋了連接字符串將需要有一個(gè)端口號(hào)以確保連接能成功。

結(jié)論

正如你所看到的,在用一個(gè)特定的端口號(hào)來(lái)設(shè)置你的SQL Server實(shí)例時(shí)沒(méi)有太多的工作要做。最大的問(wèn)題就是確保連接字符串的編碼要正確。當(dāng)設(shè)置端口號(hào)的時(shí)候,要確保該端口號(hào)沒(méi)有被使用。為了確保你的環(huán)境更加安全,我建議你關(guān)閉SQL Server Browser服務(wù)。這樣所有的客戶端在連接SQL Server的時(shí)候都要求指定端口號(hào)。
本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)。
打開(kāi)APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
生活服務(wù)
分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服