關於加強MYSQL安全的幾點建議_Mysql

來源:互聯網
上載者:User

通常我們在串連MySQL的伺服器時,要使用到口令。這個口令在網路上傳輸的時候是加過密的。可是其它的內容都是以明文的方式來進行傳輸的。

當然如果擔心這個不安全的話,可以使用壓縮協議(MySQL3.22和以上版本),這樣可以讓其它的內容不那麼容易就被看到。甚至為了讓它更加安全,可以考慮下安裝ssh。裝上它之後,你就能在MySQL伺服器與MySQL客戶之間,搭建一條加密的TCP/IP串連。
為了使你的MySQL系統更安全,強烈建議考慮以下建議:


1.為每個MySQL使用者使用口令。如果你不加設口令的話,其他人可以通過mysql --user other_user database的方式訪問你的資料庫,在使用MySQL進行檢測的時候系統也會給你相應的警告資訊。


2.通過mysql_install_db指令碼建立mySQL的授權表,你可以通過mysql -u root進行測試,正確的情況下應該不會發生錯誤。更改root的密碼:
shell> mysql -u root mysql
mysql> UPDATE user SET Password=PASSWORD( ew_password)
WHERE user= root;
mysql> FLUSH PRIVILEGES;


3.不要用root方式啟動MySQL服務。MySQL可以以任何使用者啟動。你可以通過添加一個新使用者的方式來啟動資料庫服務(也就是mysql低許可權運行)。這也不會對系統造成任何影響,因為MySQL的使用者和Unix的使用者根本來說就使不同的。


4.如果你把Unix root使用者口令放在了mysql.server指令碼中,那麼必須確保這個指令碼只對root是可讀的。檢查那個運行mysqld的使用者,確保這個使用者是唯一在資料庫目錄下有讀/寫入權限的使用者。


5.不要把process許可權給任何人。mysqladmin processlist的輸出會顯示出當前正在執行的查詢本文,這時如果有另外的使用者發出一個UPDATE user SET password=PASSWORD( ot_secure)查詢,則會被有process許可權的使用者看得到查詢。mysqld為有process許可權的使用者保留一個額外的串連, 以便一個MySQL root使用者能登入並檢查,即使所有的正常串連在使用。


6.不要把file許可權給所有的使用者。有這許可權的使用者能在擁有mysqld守護進程許可權的檔案系統那裡寫一個檔案! file許可權也可以被用來讀取任何作為運行伺服器的Unix使用者可存取的檔案。這可能被利用,例如,通過使用LOAD DATA裝載"/etc/passwd"進一個資料庫表,然後它能用SELECT被讀入。


7. 如果你不信任你的DNS,你應當使用IP來取代主機名稱。在任何情況下,你應該非常小心地使用包含萬用字元的主機名稱!
相信通過以上的設定過後,你的Mysql主機應該已經相對比較安全,不是那麼輕鬆就會讓人攻陷的。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.