Ubuntu サーバー LTS セットアップガイド (20.04 / 24.04)
このガイドでは、新規にプロビジョニングを行うことを前提としています。 Ubuntu サーバー LTS VPSまたはクラウドプロバイダー上のインスタンス(20.04 または 24.04)。.
1. ルート権限を持たないsudoユーザーを作成する
adduser ユーザー名
usermod -aG sudo ユーザー名
2. 新規ユーザーにSSHキーによるアクセス権限を付与する
ホストが作成時に公開SSH鍵の登録に対応していない場合は、ローカルマシンから一時的なディレクトリに鍵をコピーしてください。 ルート ログイン:
ssh-copy-id ro**@**********ne.ip.000
としてログインすると ルート, SSHキーを新しいユーザーに転送します:
rsync --archive --chown=yourUserName:yourUserName /root/.ssh /home/yourUserName
一度ログアウトし、新しいユーザーとして再ログインしてください:
exit
ssh ヨー**********@**********ne.ip.000
3. SSHのセキュリティ強化
としてログインできることを確認した後、 yourUserName, ルートユーザーのSSHアクセスを無効にするには:
SSH デーモンの設定ファイルを編集します:
sudo nano /etc/ssh/sshd_config
次の行が正しく記述されていることを確認してください: PermitRootLogin no
SSHを再起動する:
sudo service ssh restart
重要: 新しいユーザーでパスワード不要のログインが正常に機能することを確認するまで、1つのSSHセッションを開いたままにしておき、rootセッションを閉じる前に、別の端末から新規接続を試してみてください。.
4. タイムゾーンを設定する
sudo timedatectl set-timezone Continent/City
# 例: sudo timedatectl set-timezone Asia/Tokyo
5. FQDN を設定する
編集 /etc/hosts そして、デフォルトの行を置き換え、ご自身のパブリックIPを追加してください:
127.0.1.1 machinename.example.com
your.machine.ip.000 machinename.example.com machinename
次に、システムのホスト名を設定します:
sudo hostnamectl set-hostname machinename.example.com
6. WordOps をインストールする
wget -qO wo wops.cc && sudo bash wo
source /etc/bash_completion.d/wo_auto.rc
echo -e "alias wo='sudo -E wo'" >> $HOME/.bashrc
7. UFW(ファイアウォール)のインストールと設定
wo stack install --ufw
wo secure --ssh
UFW を有効にする前に、SSH を許可していることを確認してください(これはすでに wo secure --ssh)、その後、ファイアウォールを有効にします:
sudo ufw allow 22/tcp
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw enable
Cloudflareに対応したIP許可リストの設定については、こちらの別の記事に従ってください:
8. Cloudflare API 変数(自動化スクリプト用)
export CF_Key="yourCloudflareAPIKey"
export CF_Email="ヨー*****************@*****le.com"
これらを以下に保存してください ~/.bashrc あるいは、ログインのたびにそれらが必要になるような自動化を行う場合は、専用のenvファイルを用意してください。.
9. システムのcronを使用してWordPressのcronを有効にする
ルートユーザーのcrontabを編集します:
sudo crontab -e
追加:
*/2 * * * * find /var/www -type f -name "wp-cron.php" -path "*/htdocs/wp-cron.php" -execdir sudo -u www-data php {} \; > /dev/null 2>&1
必ず
cronサービスは実行中です:sudo systemctl enable --now cron
10. その他のツール
# S3 コマンドラインツール
sudo apt update
sudo apt install -y s3cmd
# 設定方法: s3cmd --configure
# ディスク使用状況アナライザー
sudo apt install -y ncdu
11. Redis(オブジェクトキャッシュ)
Redis をシステムサービスとして有効にして起動します:
sudo systemctl enable redis-server.service
sudo systemctl start redis-server.service
以下の方法で確認してください:
sudo systemctl status redis-server.service
12. デフォルトでスキップされる WordOps モジュール
- Nginx 究極の悪質ボットブロッカー: 素晴らしいツールですが、すでにCloudflareのWAFやレート制限機能を利用している場合は、重複してしまいます。.
13. 最後の手順と次のガイド
専用のガイドに従ってスタックを完成させてください(各選択の理由や代替案については、それらの記事で解説されています)。.
これらの手順を完了すると、お使いの Ubuntu Server LTS サーバーには以下のものが含まれるようになります:
- SSH鍵によるアクセス権を持つ、セキュリティが確保された非rootのsudoユーザー
- SSH経由でのrootログインが無効化されています
- FQDNとタイムゾーンを修正する
- WordOps + UFW + Cloudflare の連携
- システムレベルのWP-Cron、Redis、および一般的な管理ツール
これで、WordPressサイトを作成する準備が整いました。 -- example.com というサイトを作成する --wpfc (またはその他のスタックオプション)を設定し、各サイトを個別にセキュリティ強化する。.
コメントを残す