WordPress的加密金鑰(Security Keys)

加不加密大有關係!

安裝過WordPress的人都知道在「wp-config.php」設定檔裡面,有一段的程式碼是要來設定加密金鑰(Security Key)的,這些的金鑰是從2.6版開始啟用的,目前使用的金鑰共有8組,以下是開始使用的版本:

  • WordPress 2.6: AUTH_KEY, SECURE_AUTH_KEY, LOGGED_IN_KEY
  • WordPress 2.7: NONCE_KEY
  • WordPress 3.0: AUTH_SALT, SECURE_AUTH_SALT, LOGGED_IN_SALT, NONCE_SALT

而這些金鑰的目的是用來加密Cookie和密碼用的,但是並不是強制的,所以就算是你安裝WordPress的時候不設定也沒關係,但是安全上就會比較差一點。

我們來看一下WordPress 3.01中文版原來的「wp-config-sample.php」裡面的設定是這樣的:

<code>
/**#@+
 * 認證唯一金鑰設定。
 *
 * 將這些更改為不同的唯一字串或符號。
 * 您可以使用 {@link https://api.wordpress.org/secret-key/1.1/salt/ WordPress.org 私密金鑰服務} 來自動產生。
 * 您可於任何時候修改這些字串讓 Cookies 失效。這將會強制所有使用者必須重新登入。
 *
 * @since 2.6.0
 */
define('AUTH_KEY',         'put your unique phrase here');
define('SECURE_AUTH_KEY',  'put your unique phrase here');
define('LOGGED_IN_KEY',    'put your unique phrase here');
define('NONCE_KEY',        'put your unique phrase here');
define('AUTH_SALT',        'put your unique phrase here');
define('SECURE_AUTH_SALT', 'put your unique phrase here');
define('LOGGED_IN_SALT',   'put your unique phrase here');
define('NONCE_SALT',       'put your unique phrase here');

/**#@-*/
</code>

裡面告訴你要到 https://api.wordpress.org/secret-key/1.1/salt/ 這個網址取得你個人獨一無二的Key。

所以你的「wp-config.php」最好是有像這樣的設定:

<code>
define('AUTH_KEY',         '7uwC,KO-RP L9=p=y}TR@`8<iSu2[@DDz#Z2,]dkhHI2-7~+A&~=VL{6Rs%Ujr[y');
define('SECURE_AUTH_KEY',  'Az5({2(xRXD?81U$Fp-,.~WZ;<mR_j#kPMi-.EI}$40tNnT8G6*YT)jn>guoN7E`');
define('LOGGED_IN_KEY',    'P$6q+@f|8>k4B)}%fqFELS]9b}3qkAo6aVV<d5dYoxfXXcdqceX$k@:%E]-j5>B|');
define('NONCE_KEY',        '6Pc^ee$4S=?-M.A,IP@fWF;)*x-+&8N5)U`gbi+Gk&-P8ni&&OZ}]<*jK&[`BgnS');
define('AUTH_SALT',        'N=`OS`#t5zW[w],4v]6mzmCMKjk2.v)H?/zv7)w4/@9Vk7MDJKw.Hv<J^y.zEFSo');
define('SECURE_AUTH_SALT', '3?ezJTSVPJ4/m[n/+iDTz}}C+/;7[]gdSJs%d][[)5$B4)3MPt-5+~+Zz8aJdMjN');
define('LOGGED_IN_SALT',   ',54^]yI$(TEd8F3M?owjHU=QG$TCdTZJEK&s3li6vfW5w@uyk3PkV)@>5>!|90xY');
define('NONCE_SALT',       'PV~3mM_Y++k)#L`d`^.1w/ppbd[Y$,L-*^j2+H1w-AeQ18vk<y1t}+sWH)[|Aik-');
</code>

升級WordPress也別忘了升級Key

心思細密一點了看了第一段Security Keys的由來就應該會想到一件事:

我的WordPress是2.6版就開始用了,那我的「wp-config.php」裡面有幾組的金鑰呢?你看了之後保證讓你嚇一跳!

沒錯!只有三組。一樣的道理有的人可能會有四組,但是只要你沒有手動去加上WordPress 3.0的這四組新的金鑰,系統是不會自動幫你加上去的!

所以看完了本篇文章之後,趕緊將缺少的金鑰補齊吧!

10 則留言

  1. 高登老師、請問一下哦、小妹用wordpress也有一段時間了、想請教一下在wordpress有一個滿有名的外掛叫做「Quotmarks Replacer」、主要功能是禁用 wptexturize 函數、解决 WordPress 自動將半型的單引號、雙引號轉換為全型的問題.

    想請問高登老師、wordpress 3.0是否有修正這個問題了呢??

    也就是如果不安裝「Quotmarks Replacer」這個外掛的話、是否還會出現引號變成全型的問題呢???

    希望問題寫得夠清楚^^ お願いします

  2. 我看完這篇文章雖然知道可以增加安全性,但太過於抽象了,請問可以告訴我是針對那些地方的安全性有增加呢?

  3. 請問高老師:網站頁面出現「網站擁有者請注意以下錯誤:網站金鑰無效」

    網站金鑰有更換過還是出現一樣的提示且無法登入,這問題要如何解決呢?

    謝謝

發表迴響

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料