rsyncを使ってバックアップ(セキュリティの向上を目指す)

「rsyncを使ってバックアップ」で快適になったのですが、どうもパスワード認証やrootでの接続を許すなど、セキュリティ上問題ではないか?少なくとも精神衛生上よくない。

そこで、port番号の変更以外で、SSHの設定を見直すことでセキュリティをもっとアップさせたいと調べてみた。

1.設定ファイルの見直し

(1)sshd_configの見直し

$ sudo nano /etc/ssh/sshd_config

  • PermitRootLogin without password
    // これはパスワードの使用を禁止するものですが、やはりConnection refusedされ、使えません。//
  • PermitRootLogin forced-commands-only
    // これはrootで接続しても、実行できるコマンドを制限するものです。どのコマンドを許可するのか?それはauthorized_keysに設定します。//

(2)キーファイルの見直し

$ su
# nano ~/.ssh/authorized_keys
//公開鍵のファイルはssh-rsa ………….のように記載されています。
これを↓のように修正します。//
command=”/usr/lib/rsync/rrsync -ro /” ssh-rsa …………………

これで、rootで認証してもできることはrsyncのみ。

(3)sshd.serviceを再起動します。

# systemctl restart sshd.service
# exit
$ logout

2.テストしてみました。

$ su
# ssh -p 公開ポート番号 root@サーバのIPアドレス

(1) 公開鍵のパスフレーズの入力を無視してパスワード認証に進むと3回の入力ミスで、入力できなくなる。//
Enter passphrase for key ‘/root/.ssh/id_rsa’: ←無視
root@IPアドレス’s password:
Permission denied, please try again.
root@IPアドレス’s password:
Permission denied, please try again.
root@IPアドレス’s password:
Permission denied (publickey).

(2)公開鍵の正しいパスフレーズを入力するとsshdからrsyncを呼び出すことができないとして切断された。sshで接続したらいきなり指定のコマンドを実行(すなわち、いきなり指定のコマンドを実行するようsshdに接続)すべきで、コマンドプロンプトの状態に入ろうとするのはルール違反ということか?//

Enter passphrase for key ‘/root/.ssh/id_rsa’: ←正しく入力
usr/lib/rsync/rrsync: Not invoked via sshd
Use ‘command=”/usr/lib/rsync/rrsync [-ro|-wo] SUBDIR”‘
in front of lines in /root/.ssh/authorized_keys
Connection to IPアドレス closed.

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です