サーバーの初期設定

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 (またはその他のスタックオプション)を設定し、各サイトを個別にセキュリティ強化する。.

このページは役に立ちましたか?

コメントを残す

メールアドレスが公開されることはありません。 ※ が付いている欄は必須項目です