發表文章

目前顯示的是 6月, 2015的文章

MySQL PAM Plugin設定

圖片
安裝 在my.cnf中設定後重開: [mysqld] plugin-load=authentication_pam.so 在Linux中設定 在/etc/pam.d中新增一個文件,名稱與服務相同(若服務為mysql檔名就叫mysql,若叫mysqld就叫mysqld) vim /etc/pam.d/mysql #%PAM-1.0 auth include password-auth account include password-auth 使用PAM來登入MySQL 如果可以讓使用都屬在mysql的群組中,不行的話就要透過proxy來mapping使用者 mysql> create user 'wang'@'127.0.0.1' IDENTIFIED WITH authentication_pam as 'mysql';      ^^^後面as 'mysql'這個就是pam.d裡面設的那個檔案名稱 記得權限要另外設定 除錯 登入時一直出現ERROR 1045 (28000): Access denied for user 'wang'@'127.0.0.1' (using password: YES),在/var/log/security中記錄: Jun 18 19:23:31 ol65 unix_chkpwd[7097]: check pass; user unknown Jun 18 19:23:31 ol65 unix_chkpwd[7099]: check pass; user unknown Jun 18 19:23:31 ol65 unix_chkpwd[7099]: password check failed for user (wang) Jun 18 19:23:31 ol65 mysqld: pam_unix(mysql:auth): authentication failure; logname= uid=496 euid=496 tty= ruser=wang rhost=127.0.0.1 

MySQL Eneterprise Firewall安裝、使用

圖片
安裝 注意事項 一旦安裝了就會對資料庫效能產生最小呈度的影響,就算是安裝了沒啟用也是一樣 它無法與Query Cache同時使用,如果有用Query Cache請記得在安裝Firewall前先關閉Query Cache # ./bin/mysql -uroot -proot -h127.0.0.1 -P3322 mysql< share/linux_install_firewall.sql 安裝時同時會在資料庫裡面安裝幾個元件 INFORMATION_SCHEMA.MYSQL_FIREWALL_WHITELIST INFORMATION_SCHEMA.MYSQL_FIREWALL_USERS mysql.firewall_users mysql.firewall_whitelist sp_set_firewall_mode() ->store procedure 檢查是否有啟用 mysql> SHOW GLOBAL VARIABLES LIKE 'mysql_firewall_mode'; 使用Firewall 剛開始啟用時,要先把使用者註冊到INFORMATION_SCHEMA.MYSQL_FIREWALL_USERS裡面,然後再啟用RECORDING模式來記錄平常這個使用者會有哪些操作,這個操作指令會被記錄在INFORMATION_SCHEMA.MYSQL_FIREWALL_WHITELIST,記錄之後就可以把它開成PROTECTING模式,它會將記錄之外的操作給排除掉,並且資料庫裡面會記錄被DENIED的有多少、被授權的有多少…等資訊。 參考網站:http://dev.mysql.com/doc/refman/5.6/en/firewall-usage.html 建立使用者(若已有使用者就不需要) 透過sp_set_firewall_mode()的預存程式來進行註冊 mysql> CALL mysql.sp_set_firewall_mode('fwuser@localhost', 'RECORDING'); 切換剛剛註冊的使用者進行記錄操作 ./bin/mysql -uf