0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Conoha VPSでサーバー作成した際に最初にやること

Last updated at Posted at 2025-12-11

Conoha VPSでサーバー作成した際のメモ。
PCはMac、サーバーOSはRocky Linux(CentOS系)です。

Todo

  • SSHで接続
  • ユーザー作成
  • ポート変更
  • rootユーザー&パスワード認証を不可にする(ポート変更でついでにやる)
  • 自動OSセキュリティアップデート設定

SSHキーで接続

cohoha vpsでサーバーを作成した場合、作成する際にSSHキーを作れるので、作っときます。
あとセキュリティーグループがdefaultのままだと接続できないので、SSHで接続できるグループを選択しとく。
スクリーンショット 2025-12-10 11.01.28.png

SSHキー作成の際にダウンロードしたプライベートキーの権限を変更。

ターミナル
chmod 600 (ダウンロードしたpemファイル)
ssh -i ~/.ssh/(pemファイル) root@(VPSのIPアドレス)

これで繋がるようになる。
「初めて接続する場合は公開鍵を信用して良いのか」という警告が出るが、サーバー立てたばかりなのでyesを入力して問題なし。
以前に接続したことがあるのに出たら、MITM攻撃の可能性あり

ユーザー作成

# 新しいユーザー作成(yourname を好きな名前に)
adduser yourname
passwd yourname

#  sudo権限付与
usermod -aG  sudo yourname

# 作成したユーザーで鍵認証できるように設定
mkdir -p /home/yourname/.ssh
cp /root/.ssh/authorized_keys /home/yourname/.ssh/
chown -R yourname:yourname /home/yourname/.ssh
chmod 700 /home/yourname/.ssh
chmod 600 /home/yourname/.ssh/authorized_keys

ポート変更

これが意外と大変だったので、最初はubuntuでやってたけどCentOSベースのRocky Linuxに変えた。(Ubuntuはやや特殊で結局解決できなかったから・・)
設定を変えるのは以下の3つ。

  • セキュリティグループ
  • sshd_config
  • 01-permitrootlogin.conf
  • ファイアウォール

セキュリティグループ

自分でSSH用のセキュリティグループをConohaのコンソールから作成する。
ポート番号は49152 ~ 65535の範囲で選ぶのが無難みたい。
スクリーンショット 2025-12-10 20.36.42.png
作成したセキュリティグループをサーバーに適用するのも忘れずに!
スクリーンショット 2025-12-11 15.15.57.png

sshd_config

以下のように追加。ポートはセキュリティーグループで追加したものを入れてください。
rootユーザー&パスワード認証を不可にする設定もついでに入れる。

/etc/ssh/sshd_config
Port (セキュリティーグループで追加したポート番号)
PermitRootLogin no
PasswordAuthentication no

sshdをリスタートして適用。

systemctl restart sshd

01-permitrootlogin.conf

sshd_config.dフォルダ以下の設定がsshd_configより優先されるようなので、以下のファイルもnoに変更。

/etc/ssh/sshd_config.d/01-permitrootlogin.conf
PermitRootLogin no

ファイアウォール

ファイアウォールが起動されていれば、firewall-cmd --list-allコマンドで、空いているポートを確認可能。
コマンド実行後、セキュリティーグループで追加したポート番号が追加され、sshが削除されていればOK。

firewall-cmd --list-all
firewall-cmd --add-port=(セキュリティーグループで追加したポート番号)/tcp --zone=public --permanent
firewall-cmd --permanent --remove-service=ssh
firewall-cmd --reload
firewall-cmd --list-all

ここまでできたら疎通確認してみる。
注意点:ロックアウトしないように、rootでログインした状態のまま、別のターミナルを開いて疎通確認すること。
新しく設定したポート&作成したユーザーでのログインができたら、ConohaでデフォルトのSSHセキュリティグループ(22番)を外しておく。

Fail2banの設定

Fail2banは不正アクセスからサーバを守るツールです。
sshはセキュリティグループで接続元IPアドレスを指定すれば良いので、今回はhttp,httpsで不正アクセスしようとしているIPアドレスをブロックします。

# Fail2banのインストール
sudo dnf install -y fail2ban

# 設定ファイルを作成
sudo vi /etc/fail2ban/jail.local
/etc/fail2ban/jail.local
[DEFAULT]
bantime = 3600
findtime = 600
maxretry = 5

[nginx-404]
enabled = true
port = http,https
logpath = /var/log/nginx/access.log
maxretry = 10
findtime = 60
bantime = 86400
# Fail2banを起動
sudo systemctl start fail2ban
sudo systemctl enable fail2ban

自動OSセキュリティアップデート設定

これは大事といえば大事なんだけど、手動で定期的にやっても良いし、本番環境で全自動はリスクなので、お好みで。
自分はセキュリティのみ自動アップデートにしといた。

ここからは作成したユーザーでsudoを使って実行
sudo dnf install -y dnf-automatic
sudo cp /etc/dnf/automatic.conf /etc/dnf/automatic.conf.bak

以下はGithub Copilotに聞いたものをそのまま参考にした。
メールの設定もやった方が良いと思うけど、サービスリリースした後でもいいかっと思い後回しにした。

/etc/dnf/automatic.conf
[commands]
# セキュリティ更新のみ
upgrade_type = security
# ダウンロードして自動適用する
download_updates = yes
apply_updates = yes
# 起動時間帯の集中を避ける(秒)
random_sleep = 120

[emitters]
# 標準出力(systemd journal に記録される)に出すのが手軽
emit_via = stdio
# もしメール通知を使うなら email を設定する(MTA が必要)
# emit_via = email
# email_from = root@yourhost
# email_to = you@example.com

dnf-automatic関連のログが出てれば大丈夫。
すぐに実行してログ確認もできるけど、なんかフリーズしたので、翌日に確認したら、ちゃんとログ出てた。

起動確認
sudo systemctl enable --now dnf-automatic.timer
sudo systemctl status dnf-automatic.timer
# 以下は明日以降に実行した
sudo journalctl -u dnf-automatic.service -n 200 --no-pager

終わりに

ほぼ一日使った・・
一応これで、VPSを作成した直後の最低限のセキュリティは大丈夫だと思う。使わない時は停止しとけばいいし。
VPSを使ってWEBサービスを公開したい人の参考になれば幸いです。(自分のメモのために書いただけなんだけどね)

参考

Github Copilot
https://aulta.co.jp/technical/server-build/rocky-linux94-sakura-vps/setup/dnf-auto-update
https://aulta.co.jp/technical/server-build/rocky-linux94-sakura-vps/setup/ssh-port-22#i-10
https://qiita.com/free-coder/items/0c4b3b447ef279941568

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?