我在大壞的互聯網中有一臺服務器,我想在我的家庭系統上運行一個mysql客戶端以連接到它。出於明顯的安全原因,我希望MySql服務器只允許我的IP地址連接。我有一個dyndns.org帳戶,可以跟蹤我目前的IP地址。 Comcast可以隨時更改我的IP地址。如何在MySQL用戶名中使用動態DNS名稱?
,所以我創建這樣一個用戶:
CREATE USER 'user'@'mememe.dyndns.org' IDENTIFIED BY 'changeme';
GRANT ALL PRIVILEGES ON mydata TO 'user'@'mememe.dyndns.org';
所以,當我試圖從我的家庭系統連接到該服務器,我得到:
ERROR 1130 (HY000): Host 'c-98-234-122-18.hsd1.ca.comcast.net' is not allowed to connect to this MySQL server
當然的主機名,MySQL的看是IP地址的RDNS查找是什麼。我想要的是讓它識別dyndns.org名稱。有沒有辦法做到這一點?
如果沒有辦法做到這一點,這是否意味着我被迫使用通配符或特定IP地址創建用戶名?
我想過使用iptables過濾器,但我想確保沒有一個「純粹的MySQL」的方式來做到這一點。我對mysql還不是很有經驗,所以不要浪費時間去實現一個不可能的解決方案。 – AlanObject 2012-01-08 19:11:19
@Alan是啊。我不是一個mySQL大師,但我確信沒有辦法做到這一點 - mySQL的IP過濾非常非常基本,可能是故意的。 iptables聽起來像是要走的路。 – 2012-01-08 19:13:14