ssh_host_[algorithm]_key 운영 체제 복구 후 그룹 소유자가 변경되었습니다.

ssh_host_[algorithm]_key 운영 체제 복구 후 그룹 소유자가 변경되었습니다.

답을 찾을 수 없는 이상한 질문이 있습니다. 최근에 운영 체제 tar 아카이브에서 Linux 시스템(RHEL 7.3)을 복원했습니다. 수행할 단계는 다음과 같습니다.

  • 운영체제 관련 파일 시스템 tar 아카이브를 생성하여 NFS에 저장
  • 새 VM 생성, Cent OS DVD에서 부팅
  • 디스크를 분할하고 그에 따라 파일 시스템을 만듭니다.
  • NFS 마운트 및 관련 파일 시스템 압축 해제
  • 디스크를 부팅 가능하게 만들기
  • 복구된 운영 체제를 사용하여 새 가상 머신을 시작합니다.
  • 네트워크 카드 등 사소한 문제에 주의하세요.
  • 가상 머신이 격리된 네트워크에 있으므로 IP가 변경되지 않았습니다.

현재까지 모든 서비스가 큰 문제 없이 시작되었습니다. 하지만 이 가상 머신에 SSH를 통해 연결하려고 하면 "소켓 오류: 연결 끊김" 메시지가 표시되면서 실패합니다.

콘솔을 통해 가상머신에 들어가서 "systemctl status sshd"를 실행했는데 sshd 서비스가 시작되었음에도 불구하고 중요한 파일 권한에 오류가 있는 것을 보고 놀랐습니다.

Permissions 0640 for 'ssh_host_ecdsa_key' are too open. 
It is required that your private key files are NOT accessible by others. 
This private key will be ignored
bad permissions: ignore key: /etc/ssh/ssh_host_ecdsa_key
Could not load host key: /etc/ssh/ssh_host_ecdsa_key

...
...

/etc/ssh 디렉토리에 있는 파일의 소유자와 권한을 확인했는데 놀랍게도 중요한 파일이 소스 시스템과 다른 그룹에 있었습니다.

복구된 가상 머신에서(호스트 이름이 수정됨)

[root@restored ssh]# ls -al
total 292
drwxr-xr-x.   2 root root        225 Dec 16  2017 .
drwxr-xr-x. 170 root root      12288 Dec 13 09:50 ..
-rw-r--r--.   1 root root     242153 Sep  7  2016 moduli
-rw-r--r--.   1 root root       2208 Sep  7  2016 ssh_config
-rw-------.   1 root root       4361 Sep  7  2016 sshd_config
-rw-r-----.   1 root input       227 Dec 16  2017 ssh_host_ecdsa_key
-rw-r--r--.   1 root root        162 Dec 16  2017 ssh_host_ecdsa_key.pub
-rw-r-----.   1 root input       387 Dec 16  2017 ssh_host_ed25519_key
-rw-r--r--.   1 root root         82 Dec 16  2017 ssh_host_ed25519_key.pub
-rw-r-----.   1 root input      1675 Dec 16  2017 ssh_host_rsa_key
-rw-r--r--.   1 root root        382 Dec 16  2017 ssh_host_rsa_key.pub

원래 머신에서(호스트 이름이 편집됨)

[root@original ssh]# ls -al
total 292
drwxr-xr-x.   2 root root        225 Dec 16  2017 .
drwxr-xr-x. 170 root root      12288 Dec 13 09:50 ..
-rw-r--r--.   1 root root     242153 Sep  7  2016 moduli
-rw-r--r--.   1 root root       2208 Sep  7  2016 ssh_config
-rw-------.   1 root root       4361 Sep  7  2016 sshd_config
-rw-r-----.   1 root ssh_keys    227 Dec 16  2017 ssh_host_ecdsa_key
-rw-r--r--.   1 root root        162 Dec 16  2017 ssh_host_ecdsa_key.pub
-rw-r-----.   1 root ssh_keys    387 Dec 16  2017 ssh_host_ed25519_key
-rw-r--r--.   1 root root         82 Dec 16  2017 ssh_host_ed25519_key.pub
-rw-r-----.   1 root ssh_keys   1675 Dec 16  2017 ssh_host_rsa_key
-rw-r--r--.   1 root root        382 Dec 16  2017 ssh_host_rsa_key.pub

두 시스템 모두에서 /etc/group에는 다음 내용이 있습니다.

[root@original ssh]# grep ssh_keys /etc/group
ssh_keys:x:999:
[root@original ssh]# grep input /etc/group
input:x:997:

중요한 파일 그룹을 변경하고 sshd를 다시 시작했는데 문제가 해결되었습니다.

그러나 이로 인해 전체 복원 과정이 불편해졌습니다. 이건 내 질문이야

  • 단순해 보이는 tar/untar 프로세스가 파일의 GID를 변경하는 이유는 무엇입니까?
  • 그렇다면 어떤 파일이 변경되었으며 얼마나 많은 파일이 변경되었는지 어떻게 알 수 있습니까?

귀하의 귀중한 답변에 진심으로 감사드립니다.

감사해요,

방시푸

관련 정보