さくらVPSでSSH

さくらVPSのrootでのSSH接続を禁止する

さくらVPSの設定として、一般ユーザを作成してrootでのSSH接続を禁止しました。

◎一般ユーザの作成

  • 「sudo」コマンドが使える一般ユーザ「sakura」を作成しました。
    # useradd sakura
    # passwd sakura
    # usermod -G wheel sakura
    
  • iMaacのコンソールから、さくらVPS「XXXXXX.sakura.ne.jp」に一般ユーザ「sakura」でSSH接続できることを確認しました。
    $ ssh sakura@XXXXXX.sakura.ne.jp
    sakura@XXXXXX.sakura.ne.jp's password: 
    

◎SSHのルートログインを禁止

  • SSH接続するためのアプリケーションとして「openssh」がインストールされていることを確認しました。

    # rpm -qa | grep ssh
    openssh-server-7.4p1-16.el7.x86_64
    openssh-7.4p1-16.el7.x86_64
    libssh2-1.4.3-12.el7_6.2.x86_64
    openssh-clients-7.4p1-16.el7.x86_64
    
  • 「/etc/ssh/sshd_config」を修正して、ルートでのSSH接続を禁止しました。
    # cd /etc/ssh/
    # cp sshd_config sshd_config.org
    # nano sshd_config
    
    • 修正内容は、PermitRootLoginのパラメータ を「yes」から「no」に変更しただけです。
      #PermitRootLogin yes
      PermitRootLogin no
      
  • systemctlコマンドで、さくらVPSのsshdを再起動しました。
    # systemctl restart sshd
    
  • 一旦ログアウトし、iMacのターミナルからrootでSSH接続が出来ないことを確認しました。
    # exit
    iMac27:~ $ ssh root@XXXXXX.sakura.ne.jp
    root@XXXXXX.sakura.ne.jp's password: 
    Permission denied, please try again.
    root@XXXXXX.sakura.ne.jp's password: 
    
  • 念の為、iMaacのコンソールから、さくらVPS「XXXXXX.sakura.ne.jp」に一般ユーザ「sakura」でSSH接続できることを確認しました。
    $ ssh sakura@XXXXXX.sakura.ne.jp
    sakura@XXXXXX.sakura.ne.jp's password: 
    

◎firewallの設定(Port変更)

  • firewall-cmdでファイアウォールの設定を確認しました。sshは、デフォルトでサービス設定されていました。
    # firewall-cmd --list-all
    public (active)
      target: default
      icmp-block-inversion: no
      interfaces: eth0
      sources: 
      services: dhcpv6-client http ssh https
      ports: 
      protocols: 
      masquerade: no
      forward-ports: 
      source-ports: 
      icmp-blocks: 
      rich rules:
    
  • /etc/ssh/sshd_configを編集して、SSHサーバーのポートをデフォルト値(22)から変更(XXXXXX)しました。
    # cd /etc/ssh/
    # nano sshd_config
    
    • 「#Port 22」の下に「Port XXXXX」を追記しました。
      #Port 22
      Port XXXXX
      
  • firewall-cmdで古いSSHサーバーのポート(port=22/tcp)を閉じて、新しいSSHサーバーのポート(port=XXXXX/tcp)を解放するように設定しました。
    # firewall-cmd --permanent --remove-port=22/tcp
    success
    # firewall-cmd --permanent --add-port=XXXXX/tcp
    success
    #
    
  • systemctlコマンドで、firewalldを再起動しました。
    # systemctl restart firewalld
    
  • firewall-cmdで、新しいSSHサーバーのポート(ports: XXXXX/tcp)が追加されていることを確認しました。
    # firewall-cmd --list-all
    public (active)
      target: default
      icmp-block-inversion: no
      interfaces: eth0
      sources: 
      services: dhcpv6-client http ssh https
      ports: XXXXX/tcp
      protocols: 
      masquerade: no
      forward-ports: 
      source-ports: 
      icmp-blocks: 
      rich rules: 
    
  • systemctlコマンドで、sshdを再起動しました。
    # systemctl restart sshd
    
  • iMacのターミナルから古いSSHサーバーのポート(port 22)でログイン出来ないことを確認しました。
    $ ssh sakura@XXXXX.sakura.ne.jp
    ssh: connect to host XXXXX.sakura.ne.jp port 22: Connection refused
    
  • iMacのターミナルから新しいSSHサーバーのポート(port XXXXX)でログインしてsuコマンドでルートになることが出来ることを確認してSSHの設定を終了しました。
    $ ssh -pXXXXXX sakura@XXXXX.sakura.ne.jp
    sakura@XXXXX.sakura.ne.jp's password: 
    $ su -
    パスワード:
    #
    
<= さくらVPSでLAMP | | さくらVPSでFTP =>
タイトルとURLをコピーしました