2009-09-22 34 views
4

我需要打開MySQLd的網絡連接,但每次我都會將服務器強行變爲遺忘。一些意味着密碼猜測腳本開始在服務器上敲擊,在端口3306上打開連接並永久嘗試隨機密碼。防止對MySQL的暴力破解?

我該如何阻止這種情況發生?

對於SSH,我使用了denyhosts,它運行良好。有沒有辦法讓denyhosts與MySQLd一起工作?

我也考慮改變MySQL正在運行的端口,但是這是不太理想,只有一個權宜之計(如果他們發現新的端口?)

沒有人有任何其他想法?

如果它有所不同,我在FreeBSD 6.x上運行MySQL 5.x。

回答

0

限制單個主機可以進行的不成功請求的數量。

+0

哼...你會在哪一級引入這個規則?這是MySQL的一個功能嗎? – mjv 2009-09-22 19:31:10

+0

是的,你在MySQL裏面做什麼? – 2009-09-22 19:48:07

4

防火牆mysql端口出。但我相信這屬於serverfault領域。

+1

此外,限制哪些主機可以在設置用戶時連接到您的MySQL服務器。 – 2014-10-25 12:54:16

+0

事實上,這使得它接近堆棧溢出,以dba ;-)認真地說,雖然,好點,當然不會有害,但如果端口被防火牆也不會有太大的好處;) – 2014-10-25 17:05:51

0

我相信將端口號從默認端口號(3306)更改爲其他端口號不會提高安全性,但在大多數情況下(至少有一點)會有所幫助。你是在實踐中嘗試過還是隻考慮過?

+0

只考慮,因爲在帖子中註明。我希望能有更好的解決方案。 – 2009-09-22 19:52:15

2

我也考慮改變MySQL正在運行的端口,但是這是不太理想,只有一個權宜之計(如果他們發現新的端口?)

愚蠢機器人不斷地攻擊你的端口,他們不尋找新的端口。移動到不同的端口,你現在只需要擔心嘗試來攻擊你,而不是受到掃描隨機主機的受感染機器的互聯網背景噪音。這是一個很大的改進。

如果您只需要讓少數特定的機器通過您的數據庫,則可以考慮數據庫和客戶機上的本地端口之間的SSH隧道。你真的很想打開一個數據庫端口到公共互聯網。

+0

本地SSH隧道聽起來不錯,另外你可以在隧道上使用denyhosts。 – Pascal 2009-11-04 12:49:01

+0

+1 openvpn是一個理想的解決方案 – 2011-10-03 13:41:51

相關問題