ウェブサイトにおける悪い慣行
ウェブデザインにおける致命的なミスの分析。スライダー、自動再生、重いページがコンバージョン率やGoogle・Yandexでの検索順位を低下させる理由
91
2 分。
252
4 分。
作業を行うために、nginx、docker、および ufw をインストールします。
sudo apt update && sudo apt install nginx docker.io ufw -y
root ユーザーで作業するのは安全ではないため、adduser your_name コマンドで新しいユーザーを作成し、usermod -aG sudo your_name および groups your_name を使用して管理者権限を付与する必要があります。
その後、コンソールにユーザー追加の通知 Adding user "your_name" ... と、パスワード入力欄が表示されます。
これはブルートフォース攻撃に対する確実な防御策です。sshキーが既に存在する場合は、ssh-copy-id your_name@server_ipでサーバーに送信してください。ない場合は、ssh-keygen -t ed25519 -C "your_name@vps"で作成してください。
この方法でコピーする際、サーバーのパスワードの入力が求められる場合があります。セキュリティ上の理由から、パスワードを入力しても画面には表示されません!
次に、sshキー以外の方法でのログインを無効にする必要があります。設定ファイル sudo nano /etc/ssh/sshd_config を開き、以下の行を見つけて変更(または追加)してください:
PermitRootLogin no - ssh経由でのrootユーザーによる直接ログインを禁止します;PasswordAuthentication no - 通常のパスワードを使用したサーバーへのログインを無効にします;ChallengeResponseAuthentication no - "チャレンジ・レスポンス"方式による認証を無効にします;UsePAM no - ssh での PAM (Pluggable Authentication Modules) モジュールの使用を無効にします。サービスを再起動します
sudo systemctl restart ssh。これで、rootとしてログインしようとすると、root@ip: Permission denied (publickey)というエラーが発生します。
ファイアウォールは、許可されたポート以外のすべてのポートをブロックします。
セキュリティを強化するには、SSHのポートを別のものに変更し、UFWの設定にも追加する必要があります!
sudo ufw enable sudo ufw allow 22/tcp sudo ufw allow 80/tcp sudo ufw allow 443/tcp sudo ufw status
statusコマンドを実行すると、ufw が有効になっているか、およびどのポートが許可されているかを確認できます。
React2Shellは、ハッカーがサーバー上で自身のコードを実行することを可能にする重大な脆弱性です。
確認するには、プロセスとファイルのリストを確認してください。以下のいずれかが検出された場合、サーバーは感染しています:
ssh.sh、sex.sh、kai.tar.gz、または httd ファイル;top または htop コマンドで確認できます。ウイルスから保護するには、NextJSを安全なバージョン(NextJSのサイトを参照)に更新し、NodeJSを更新し、--read-onlyオプションを指定してUSER node環境下でDockerコンテナを実行し、Whitelist経由でアクセスできるようにする必要があります。
もしプロジェクトがハッキングされた場合は、感染したポッド/コンテナを削除し、キャッシュをクリアし、必ずすべてのキーとパスワードを変更する必要があります。