このパラメータを変更するまで、私のサーバーは頻繁にハッキングされていました
サーバー(VPSまたは専用サーバー)がハッキングされた場合、簡単なパラメータ変更でセキュリティを大幅に強化できます。ログインには数ステップかかりますが、ブルートフォース攻撃、キーロガー、その他の攻撃から保護されます。そして、いくつかの選択肢があります。
パスワードは最悪だ
2024年なのに、私たちはまだパスワードを使っています。1960年にも使っていたのに、今もまだ使っているんです。
そして、人々は依然として不適切なパスワードを選んでいます。もしあなたのパスワードが4VZ3rqii9A7@aFUHDQLJggDNsQNbsJ8vJ8bq.aGwB2ed-t26fudkc2B6s.PzC4ut7tTzFMX3yz*ZJ9yc*ve-2ZKfA4-oUuMEBEiwなら、monkey123よりずっとマシです。しかし、それでも人々はパスワードを使い回す癖があります。よくあるパターンです。確かにパスワードマネージャーは使っているものの、別のマシンを使っていて、使い慣れたパスワードを使うためにフォーラムやサイトでパスワードをリセットする必要がある、といった状況です。そして1ヶ月後、そのフォーラムがハッキングされ、ハッカーはログを盗み、あなたがデータセンターのIPアドレスを使用していることを確認し、VPS上のVPN設定からアクセスしていることを突き止め、そのパスワードを使ってあなたになりすましてシステムにログインします。こうして、完全に乗っ取られたのです。
あるいは、ホストに登録して、そのパネルでパスワードを設定する必要があったとします。すると、情報が漏洩し、攻撃者があなたのルートパスワードを入手してしまうのです…
問題はたくさんあります。でも、解決できます。
オプション1: Google Authenticatorによる2要素認証
はい、もう銀行だけのものではありません!VPSでGoogle Authenticatorを使用する方法についての記事を書きましたが、非常にうまく機能しています。パネルコンソール接続にも使用できるので、「プロバイダーのパネルがハッキングされた」というリスクを回避できます。
この設定により、パスワードの脆弱性が排除されます。たとえ誰かがあなたのパスワードを知っていたとしても、Google Authenticator にアクセスする必要があります(Google Authenticator 自体は通常、PIN、パスコード、指紋、Face ID などのスマートフォンのセキュリティによって保護されています)。
オプション2: SSHキーによる2要素認証
認証子のようなものが利用可能になる前(少なくともRSA特許の影響を受けずに済む前)には、SSH鍵がありました。これは簡単に設定できます。概要は次のとおりです。
- SSHキーペアを生成する
- 公開鍵をサーバーアカウントの authorized_keys ファイルに保存します。
- パスワードのみのログインを無効にする
これについては3部構成のチュートリアルを用意しました。「えっ、チュートリアルが3つも?」と思うかもしれませんが、コマンド自体はシンプルですが、説明と詳細な例で分かりやすく解説しています。
パート1では、キーの生成について説明します。パート2では、これらのキーを使用してログインする方法を説明します。そしてパート3では、パスワードログインを無効にする方法をステップバイステップで説明します。