SSHおよびVNCセキュリティの問題

SSHおよびVNCセキュリティの問題

私のCentos 7.5サーバーは過去数日間に何千ものSSHログインを試み、今日は「セキュリティの失敗が多すぎます」というメッセージが表示され、VNCクライアントにログインできませんでした。その場合は、この問題を解決する方法があるかどうかを尋ねたいと思います。トンネリングがこの問題を解決できることを読んでいますが、面倒なので使用したくありません。

答え1

SSH

  1. 直接ルートアクセスを無効にします。

    cat /etc/ssh/sshd_config | grep PermitRootLogin
    

    次のように設定する必要があります。

    PermitRootLogin no
    
  2. SSHプロトコルバージョン2を適用するには:

    cat /etc/ssh/sshd_config | grep Protocol
    

    次のように設定する必要があります。

    Protocol 2
    
  3. ポートを56789などの任意のポートに変更します。

    cat /etc/ssh/sshd_config | grep Port
    

    次のように設定する必要があります。

    Port 56789
    
  4. ファイアウォールに穴を開けます。

    sudo iptables -A INPUT -p tcp -m tcp --dport 56789 -m comment --comment "SSH custom port" -j ACCEPT
    
  5. 新しい公開/秘密鍵ペアを生成します。

    ssh-keygen -t rsa -b 4096
    
  6. このキーを追加して他のキーがないことを確認してください。

    eval $(ssh-agent -s)
    ssh-add
    ssh-add -l
    

    結果は次のとおりです。

    4096 SHA256:gibberish /home/fictional_user/.ssh/id_rsa (RSA)
    4096 SHA256:gibberish fictional_user@fictional_computer (RSA)
    
  7. サーバーを維持するクライアントコンピュータに公開鍵をインポートします。

    ssh-copy-id fictional_user@public_ip -p 56789
    
  8. その後、パスワードの確認を完全に無効にします。

    cat /etc/ssh/sshd_config | grep PasswordAuthentication
    

    次のように設定する必要があります。

    PasswordAuthentication no
    

仮想ネットワークコントローラ

特定のIPアドレス範囲のみを許可する必要があります。たとえば、次のデフォルトのローカルネットワークに対してのみ許可する必要がありますiptables

sudo iptables -A INPUT -p tcp -m tcp --dport 5900 -m comment --comment "VNC on desktop: local network only" -m iprange --src-range 192.168.0.1-192.168.0.254 -j ACCEPT

関連情報