怎樣使MySQL安全以對_PHP教程

來源:互聯網
上載者:User
當你串連一個MySQL伺服器時,你通常應該使用一個口令。口令不以明文在串連上傳輸。
所有其它資訊作為能被任何人讀懂的文本被傳輸。如果你擔心這個,你可使用壓縮協議(MySQL3.22和以上版本)使事情變得更難。甚至為了使一切更安全,你應該安裝ssh(見http://www.cs.hut.fi/ssh)。用它,你能在一個MySQL伺服器與一個MySQL客戶之間得到一個加密的TCP/IP串連。
為了使一個MySQL系統安全,強烈要求你考慮下列建議:
對所有MySQL使用者使用口令。記住,如果other_user沒有口令,任何人能簡單地用mysql -u other_user db_name作為任何其它的人登入。對客戶機/伺服器應用程式,客戶可以指定任何使用者名稱是常見的做法。在你運行它以前,你可以通過編輯mysql_install_db指令碼改變所有使用者的口令,或僅僅MySQL root的口令,象這樣:
shell> mysql -u root mysql
mysql> UPDATE user SET Password=PASSWORD('new_password')
WHERE user='root';
mysql> FLUSH PRIVILEGES;
不要作為Unix的root使用者運行MySQL守護進程。mysqld能以任何使用者運行,你也可以創造一個新的Unix使用者mysql使一切更安全。如果你作為其它Unix使用者運行mysqld,你不需要改變在user表中的root使用者名稱,因為MySQL使用者名稱與Unix 使用者名稱沒關係。你可以作為其它Unix使用者編輯mysql.server啟動指令碼mysqld。通常這用su命令完成。對於更多的細節,見18.8 怎樣作為一個一般使用者運行MySQL。
如果你把一個Unix root使用者口令放在mysql.server指令碼中,確保這個指令碼只能對root是可讀的。
檢查那個運行mysqld的Unix使用者是唯一的在資料庫目錄下有讀/寫入權限的使用者。
不要把process許可權給所有使用者。mysqladmin processlist的輸出顯示出當前執行的查詢本文,如果另外的使用者發出一個UPDATE user SET password=PASSWORD('not_secure')查詢,被允許執行那個命令的任何使用者可能看得到。mysqld為有process許可權的使用者保留一個額外的串連, 以便一個MySQL root使用者能登入並檢查,即使所有的正常串連在使用。
不要把file許可權給所有的使用者。有這許可權的任何使用者能在擁有mysqld守護進程許可權的檔案系統那裡寫一個檔案!為了使這更安全一些,用SELECT ... INTO OUTFILE產生的所有檔案對每個人是可讀的,並且你不能覆蓋已經存在的檔案。file許可權也可以被用來讀取任何作為運行伺服器的Unix使用者可存取的檔案。這可能被濫用,例如,通過使用LOAD DATA裝載“/etc/passwd”進一個資料庫表,然後它能用SELECT被讀入。
如果你不信任你的DNS,你應該在授權表中使用IP數字而不是主機名稱。原則上講,--secure選項對mysqld應該使主機名稱更安全。在任何情況下,你應該非常小心地使用包含萬用字元的主機名稱

http://www.bkjia.com/PHPjc/632388.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/632388.htmlTechArticle當你串連一個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.