sshコマンドによるサーバ接続
下記コマンドでssh接続。xxx部分はサーバのIPアドレス。
ssh root@xxx.xxx.xxx.xxx
OSを再インストールの場合に、上記コマンドを打つとエラーが出て接続出来ない場合がある。その場合は、~/.ssh/known_hosts
ファイルに鍵認証が残っていないか確認し、あれば削除する。
OSアップデート
# yum update
rootユーザーのログインを禁止
一般ユーザを作成
# adduser sampleuser
一般ユーザのパスワードを設定
# passwd sampleuser
rootユーザでのアクセス終了
# exit
一般ユーザでssh接続
ssh sampleuser@xxx.xxx.xxx.xxx
rootユーザに切り替え
$ su -
設定ファイルのバックアップ作成
# cd /etc/ssh
# cp sshd_config sshd_config.old
設定ファイルを編集
# vim sshd_config
#PermitRootLogin yes
の記述を検索し、PermitRootLogin no
に変更する。
sshdを再起動すると設定が有効になる。
# systemctl restart sshd.service
ssh接続を鍵認証で行う
鍵を作成
cd ~/.ssh
ssh-keygen -f sakura_rsa -t rsa -b 2048
鍵をサーバに登録
ssh-copy-id -i ~/.ssh/sakura_rsa.pub sampleuser@xxx.xxx.xxx.xxx
接続確認
ssh -i ~/.ssh/sakura_rsa sampleuser@xxx.xxx.xxx.xxx
パスワードでのログインを禁止
sshのコンフィグファイルを開く。
$ sudo vim /etc/ssh/sshd_config
下記の設定をno
に設定する。
PasswordAuthentication no
設定を反映。
$ sudo systemctl restart sshd
SSH接続ポートを変更
$ sudo vim /etc/ssh/sshd_config
下記の記述を検索する。
#Port 22
コメントアウトを外してポート番号を10022に変更。
Port 10022
コンフィグファイルを編集したら忘れずに設定を反映させる。
$ sudo systemctl restart sshd
このままだとログインできないためfirewalldの設定を変更する。
$ sudo vim /usr/lib/firewalld/services/ssh.xml
portの番号を10022に変更。
<port protocol="tcp" port="10022"/>
firewalldの設定を反映。
$ sudo firewall-cmd --reload