新しいVPSまたは専用サーバーを始める方法
導入

晴れたソノラからこんにちは!
今朝、 Hetznerから、新しいAX41-NVMe サーバーがDebian でプロビジョニングされ、使用可能になったことを知らせるメールを受け取り、嬉しく思いました。
この投稿では、新しいサーバーで最初に行った手順について説明します。これらの手順は、VPSでも専用サーバーでも同じです。手順の内容はDebian以外のオペレーティングシステムでも同じですが、ディストリビューションごとにソフトウェアパッケージングシステムが異なるため、コマンドは異なります。
この投稿では、ローカル コンピューターに動作する SSH クライアントがあり、プロバイダーによってサーバーがプロビジョニングされたときに SSH 公開キーがサーバーにインストールされていることを前提としています。
さあ、始めましょう!
基本情報をメモする
Hetznerからのメールには、IPv4およびIPv6アドレス、注文番号と日付、サーバー番号、サーバーのデータセンター所在地、ホストキーのフィンガープリントといったサーバーの基本情報が記載されていました。また、Hetznerが提供するソフトウェアダウンロードへのリンクと、Hetzner's Guideへのリンクも記載されていました。さらに、サポートアドレス、営業時間、電話番号も記載されていました。
私は各サーバーの基本情報をコピーし、ラップトップのホームディレクトリ内のファイルに保存することを好みます。
オペレーティングシステムを更新する
サーバーで最初にやったのは、オペレーティングシステムのアップデートでした。アップデートは最初に行う必要があります。ローカル構成に変更を加えた後にアップデートで構成ファイルが変更されると、他の作業が混乱する可能性があるからです。
root@Debian-1101-bullseye-amd64-base ~ # apt-get update
Get:1 http://deb.debian.org/debian bullseye InRelease [116 kB]
Get:2 http://security.debian.org/debian-security bullseye-security InRelease [44.1 kB]
Get:3 http://deb.debian.org/debian bullseye-updates InRelease [39.4 kB]
Get:4 http://mirror.hetzner.com/debian/packages bullseye InRelease [116 kB]
Get:5 http://security.debian.org/debian-security bullseye-security/main amd64 Packages [154 kB]
[. . . ]
取得:32 http://mirror.hetzner.com/debian/security bullseye-security/main amd64 パッケージ [154 kB] 取得:33 http://mirror.hetzner.com/debian/security bullseye-security/main 翻訳-en [96.3 kB] 3秒で30.9 MBを取得(9,792 kB/秒) パッケージリストを読み込んでいます...完了 root@Debian-1101-bullseye-amd64-base ~ # apt-get アップグレード パッケージリストを読み込んでいます...完了 依存関係ツリーを構築しています...完了 状態情報を読み込んでいます...完了 アップグレードを計算中...完了 以下のパッケージは保留されています: Linuxイメージ-amd64 次のパッケージがアップグレードされます: ベースファイル、bind9-dnsutils、bind9-host、bind9-libs、bsdextrautils、bsdutils cryptsetup cryptsetup-bin cryptsetup-initramfs curl distro-info-data dpkg fdisk、gpgv、gzip、インテルマイクロコード、libblkid1、libc-bin、libc-l10n、libc6 libcryptsetup12 libcurl3-gnutls libcurl4 libexpat1 libfdisk1 libgmp10 libldap-2.4-2 libldap-common liblzma5 libmount1 libnss-systemd libpam-systemd libsasl2-2 libsasl2-modules libsasl2-modules-db libseccomp2 libsmartcols1 libssl1.1 libsystemd0 libudev1 libuuid1 libxml2 ロケール マウント openssl パブリックサフィックス rsyslog systemd systemd-sysv systemd-timesyncd sysvinit-utils task-english task-ssh-server tasksel tasksel-data tzdata udev util-linux util-linux-locales vim-common vim-tiny wget xxd xz-utils zlib1g 65 個がアップグレードされ、0 個が新規インストールされ、0 個が削除され、1 個がアップグレードされませんでした。 39.2 MB のアーカイブを取得する必要があります。 この操作の後、16.4 KB のディスク領域が解放されます。 続行しますか? [Y/n] Y
[. . . ]
ルート@Debian-1101-bullseye-amd64-base ~ #
セキュリティ — SSHD の設定
2つ目のステップはセキュリティです。私は/etc/sshディレクトリに移動してsshdの設定を編集するのが好きです。まず、Debianインストーラによってインストールおよび更新された元の設定ファイル(/etc/ssh/sshd_config)のバックアップコピーを作成します。いつでも元に戻せるようにしておくことをお勧めします。
root@Debian-1101-bullseye-amd64-base ~ #
cp -p /etc/ssh/sshd_config /etc/ssh/sshd_config~
root@Debian-1101-bullseye-amd64-base ~ #
次に、/etc/ssh/sshd_configを編集します。通常は、デフォルトのポート設定を22から17800などの高ポートに変更します。また、パスワード認証も無効にします。
デフォルトのポート設定を 22 から変更し、パスワード認証を無効にすることは、文字通り何千もの SSH パスワード ハッキングの試みを回避する最も簡単な方法です。
/etc/ssh/sshd_config への変更は次のとおりです。
root@Debian-1101-bullseye-amd64-base ~ # cat /etc/ssh/sshd_config
[. . . ]
ポート17800
[. . . ]
PermitRootLogin 禁止パスワード
[. . . ]
パスワード認証番号
[. . . ]
ルート@Debian-1101-bullseye-amd64-base ~ #
sshd_config ファイルを変更した後は、必ず sshd を再起動してください。sshd を再起動しないと、変更内容は次回の再起動まで有効になりません。
root@Debian-1101-bullseye-amd64-base ~ # systemctl restart sshd
sshdの再起動が完了したら、サーバーへの既存のローカルSSH接続をそのままにして、別のターミナルウィンドウから再度ログインしてみることをお勧めします。sshdを再起動しても既存の接続は切断されません。2つ目のターミナルウィンドウからログインできない場合でも、最初のウィンドウを使ってエラーをデバッグできます。ロックアウトされて再インストールが必要になるよりはずっと良い方法です。
また、私は通常、必要なローカルSSHキーを持たないアカウントからログインを試みます。このテストは、パスワードログインが無効化されていることを確認する方法です。サーバーがパスワードを要求してこなければ、サーバーはパスワードハッキングに一切反応しないことになります。SSHポートを変更し、パスワードログインを無効化すると、サーバーのアクセスログは通常、はるかに平穏になります。
自分専用の Hetzner AX サーバーを入手しましょう!
ヘッツナーのAXラインページへのリンクはこちらです。AXラインを1本お求めの方、あるいは複数本お求めの方にも最適です!
