WordPressを運用するなら最低限これだけはやっておけリスト

  • 9
    Like
  • 0
    Comment

WordPress運用を行うなら最低限これだけはやっておけリスト

事の始まり。ていうか、時すでに遅し。
既に事終えているのですが、弊社が管理しているサーバの一つに古いWordPressがインストールされており、Web ShellというBackdoorを仕込まれる事態になりました。

二度とこんなことは経験したくないため、誰でも容易に運用できるからこそ、誰でも簡単に攻撃できてしまうため、ある程度のリスクヘッジすることが必要と感じました。
しかしながら、攻撃手法も様々なためこれで全てとは思っていませんが、少なくともこれから挙げていくリストを守れば侵入を許すことは早々ないかな、と思います。

(っていう啓蒙活動はみんなやってるんですけど、なぜか広まらない。)

結果何が起きたか

WordPressの3.6を運用するサーバと独自のECパッケージが同居するサイトが瀕死になりました。
Shellログインができず、Nginxが起動しない(なんとかhttpdは生きてた)、yumパッケージの修復を試みるもOSのライブラリの一部が欠損しているため、どうしようもない状態です。

幸いしたのはDBサーバが元々はWebサーバから作られていたということもあり、OSのバージョンからライブラリまでほぼ全て同じであるということです。
このことから、Webサーバは仮復旧しましたが、以前としてウィルス感染したままです。

というわけで、急遽、DBサーバから改めてWebサーバを作り直しました。(今時Cent OS 5.2

これぐらいやっておけよって思うこと

  • Pluginの導入一覧
    • Edit Author Slug
      • authorを変更するためのプラグイン。管理者が誰であるかがわからなくようにするために必要。ググれば危険性がいくらでも出てきます。
      • https://example.co.jp/?auther=1 とかするとログインユーザがわかります。やめましょう。
    • Acunetix Secure WordPress
      • これも有名です。WordPressのセキュリティに関わる部分に対し、良い感じにセキュリティを担保します。
      • config.phpを隠したりreadme.htmlを無効にしたりファイルパーミッションを適切にしてくれたり。
    • Wordfence Security or AntiVirus
      • サイト改ざんを検出するPluginです。どちらかは最低入れましょう。
      • Themeが改ざんされ、侵入されるケースは割と多いです。
    • Login LockDown
      • 執拗にあるユーザでログインを試行した場合、そのユーザを一定回数で一定時間、そのユーザをロックするPluginです。
      • 他のPluginとの兼ね合いで自分がロックされることもありますが、入れておきましょう。特に会社のIPや自宅のIPが動的IPであれば、入れておくことをなおさらお薦めします。固定IPでしたらwp-login.phpとadminディレクトリにBasic認証をかけておくと良いと思います。
    • Backwpup
      • WordPressをDropboxにバックアップするPluginです。
      • これ入れて設定しておけば最悪前日分に戻せます。

まとめ

最低でもこれぐらいやっておかないと安心してWordPressの運用は利用者に任せられないと思います。
重くなるから嫌だとかそういうのはキャッシュを導入したり、サーバを増強すればなんとでもなります。
むしろ、これぐらいで重くなるようなサイトは色々Pluginの入れすぎか、jsやcssが最適化できていないとかそういう違う方面の努力が必要です。

………弊社が運用するブログもPluginを入れすぎている関係で重い(表示が遅い)んですけどね………。
これは前任者が色々入れたからですけど………。