- 管理画面URL変更
- 画面キャプチャ認証
- パスワードをパスフレーズで設定
- IP制限
IP制限については利便性が落ちるので、1~3だけでいいかな。
themes/テーマ_child/functions.php
// 管理画面URL切り替え define( 'LOGIN_CHANGE_PAGE', 'dummy_admin.php' ); add_action( 'login_init', 'login_change_init' ); add_filter( 'site_url', 'login_change_site_url', 10, 4 ); add_filter( 'wp_redirect', 'login_change_wp_redirect', 10, 2 ); // 指定以外のログインURLは403エラーにする if ( ! function_exists( 'login_change_init' ) ) { function login_change_init() { if ( !defined( 'LOGIN_CHANGE' ) || sha1( 'keyword' ) != LOGIN_CHANGE ) { status_header( 403 ); exit; } } } // ログイン済みか新設のログインURLの場合はwp-login.phpを置き換える if ( ! function_exists( 'login_change_site_url' ) ) { function login_change_site_url( $url, $path, $orig_scheme, $blog_id ) { if ( $path == 'wp-login.php' && ( is_user_logged_in() || strpos( $_SERVER['REQUEST_URI'], LOGIN_CHANGE_PAGE ) !== false ) ) $url = str_replace( 'wp-login.php', LOGIN_CHANGE_PAGE, $url ); return $url; } } // ログアウト時のリダイレクト先の設定 if ( ! function_exists( 'login_change_wp_redirect' ) ) { function login_change_wp_redirect( $location, $status ) { if ( strpos( $_SERVER['REQUEST_URI'], LOGIN_CHANGE_PAGE ) !== false ) $location = str_replace( 'wp-login.php', LOGIN_CHANGE_PAGE, $location ); return $location; } } // 管理画面URL切り替え ここまで
# vi /var/www/vhosts/www.yuulinux.tokyo/httpdocs/contents/dummy_admin.php <?php define( 'LOGIN_CHANGE', sha1( 'keyword' ) ); require_once './wp-login.php';
権限設定
# chown ユーザ:nginx /var/www/vhosts/www.yuulinux.tokyo/httpdocs/contents/dummy_admin.php.php
これで管理画面のURLが下記に変更されました。※ダミーURL
https://www.yuulinux.tokyo/contents/dummy_admin.php
@see https://blog.s-giken.net/140.html