系統: CentOS 6 套件:postgresql
原因:
專案中使用的postgresql,
希望能夠開發給工程師用管理工具進行相關作業。
但為了安全上的考量,開放外部連線需要進行連線限制。
處理方式:
Postgresql 連線限制是要從設定檔進行修改的。
跟平常使用mysql透過指令去進行連線限制不一樣。
設定檔名稱:pg_hba.conf
內部格式如下圖:
第1個欄位
可以設定為host 或者 localhost
host表示我們要讓外部的IP位址進行連線。
localhost表示只能讓本機進行連線
第2個欄位
這邊輸入all 表示全部的Database。
如果要開放指定的database,
這邊要輸入database的名稱。
第3個欄位
使用者帳號
如果不指定使用者的話,就用all表示。
但建議在這邊設定使用者帳號上去。
表示我們限制只有「誰」可以連到我們的資料庫。
第4個欄位
IP address,表示我們同意的來源端。
第5個欄位
我們要用什麼方式驗證使用者密碼
trust表示不用認證密碼,讓你直接連線。
(這建議不要使用,太危險了)
password 表示輸入使用者的密碼。
(這建議不要使用再外部連線,因為password是明碼傳輸)
md5 表示輸入使用者的密碼。
(這是最建議使用的,因為他是經過md5加密後進行傳輸)
peer 這是只能用在本機的連線認證 (只能搭配local)
在linux系統的一個帳號名稱,
當它同時在postgresql上有一樣的帳號名稱時,
使用peer,可以讓他使用免密法的方式連線。
大致上postgresql的連線限制說明到這,
其他就得再找相關文件來參考。
參考網址:
https://blog.json.tw/postgresql-hba-conf