49.4. 호스트의 공용 SSH 키 관리
OpenSSH는 공개 키를 사용하여 호스트를 인증합니다. 한 시스템이 다른 시스템에 액세스하려고 시도하여 키 쌍을 제공합니다. 호스트가 처음 인증될 때 대상 시스템의 관리자는 요청을 수동으로 승인해야 합니다. 그런 다음 시스템은 known_hosts
파일에 호스트의 공개 키를 저장합니다. 원격 시스템이 대상 시스템에 다시 액세스하려고 할 때마다 대상 시스템은 known_hosts
파일을 확인한 다음 승인된 호스트에 대한 액세스 권한을 자동으로 부여합니다.
49.4.1. IdM 웹 UI를 사용하여 호스트의 SSH 키 업로드
Identity Management를 사용하면 공개 SSH 키를 호스트 항목에 업로드할 수 있습니다. OpenSSH는 공개 키를 사용하여 호스트를 인증합니다.
사전 요구 사항
- IdM 웹 UI 또는 사용자 관리자 역할을 관리하기 위한 관리자 권한.
절차
~/.ssh/known_hosts
파일에서 호스트의 키를 검색할 수 있습니다. 예를 들어 다음과 같습니다.server.example.com,1.2.3.4 ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEApvjBvSFSkTU0WQW4eOweeo0DZZ08F9Ud21xlLy6FOhzwpXFGIyxvXZ52+siHBHbbqGL5+14N7UvElruyslIHx9LYUR/pPKSMXCGyboLy5aTNl5OQ5EHwrhVnFDIKXkvp45945R7SKYCUtRumm0Iw6wq0XD4o+ILeVbV3wmcB1bXs36ZvC/M6riefn9PcJmh6vNCvIsbMY6S+FhkWUTTiOXJjUDYRLlwM273FfWhzHK+SSQXeBp/zIn1gFvJhSZMRi9HZpDoqxLbBB9QIdIw6U4MIjNmKsSI/ASpkFm2GuQ7ZK9KuMItY2AoCuIRmRAdF8iYNHBTXNfFurGogXwRDjQ==
호스트 키를 생성할 수도 있습니다. SSH 키 생성을 참조하십시오.
키 파일에서 공개 키를 복사합니다. 전체 키 항목의 형식은
호스트 이름, IP 유형 key=
입니다.key==
만 필요하지만 전체 항목을 저장할 수 있습니다. 항목의 모든 요소를 사용하려면 순서유형 key= [host name,IP]
가 있도록 항목을 다시 정렬합니다.cat /home/user/.ssh/host_keys.pub ssh-rsa AAAAB3NzaC1yc2E...tJG1PK2Mq++wQ== server.example.com,1.2.3.4
- IdM 웹 UI에 로그인합니다.
-
Identity>Hosts 탭
으로 이동합니다. - 편집할 호스트 이름을 클릭합니다.
-
Host Settings
섹션에서 SSH 공개 키추가
버튼을 클릭합니다. -
호스트의 공개 키를
SSH 공개 키
필드에 붙여넣습니다. -
Set
을 클릭합니다. -
IdM 웹 UI 창 상단에 있는
저장
을 클릭합니다.
검증
-
Hosts Settings
(호스트 설정) 섹션에서 키가SSH 공개 키에
나열되어 있는지 확인합니다.
49.4.2. IdM CLI를 사용하여 호스트의 SSH 키 업로드
Identity Management를 사용하면 공개 SSH 키를 호스트 항목에 업로드할 수 있습니다. OpenSSH는 공개 키를 사용하여 호스트를 인증합니다. 호스트 SSH 키는 호스트 추가를 사용하여 호스트를 생성할 때 또는 나중에 항목을 수정하여 IdM의 호스트 항목에 추가됩니다
.
참고 RSA 및 DSA 호스트 키는 설치 스크립트에서 SSH 서비스가 명시적으로 비활성화되지 않는 한 ipa-client-install
명령으로 생성됩니다.
사전 요구 사항
- IdM 또는 사용자 관리자 역할을 관리하기 위한 관리자 권한.
절차
--sshpubkey
옵션과 함께host-mod
명령을 실행하여 base64로 인코딩된 공개 키를 호스트 항목에 업로드합니다.호스트 키를 추가하면 호스트의 SSHFP(Secure Shell 지문) 레코드가 변경되므로
--updatedns
옵션을 사용하여 호스트의 DNS 항목을 업데이트합니다. 예를 들어 다음과 같습니다.$ ipa host-mod --sshpubkey="ssh-rsa RjlzYQo==" --updatedns host1.example.com
실제 키는 일반적으로 등호(=)로 끝나지만 더 길게 됩니다.
둘 이상의 키를 업로드하려면 여러 --sshpubkey 명령줄 매개변수를 입력합니다.
--sshpubkey="RjlzYQo==" --sshpubkey="ZEt0TAo=="
참고호스트에는 공용 키가 여러 개 있을 수 있습니다.
- 호스트 키를 업로드한 후 ID 도메인 중 하나로 Identity Management를 사용하고 호스트 키 관리에 SSSD 툴을 사용하도록 SSSD를 설정하고 OpenSSH 서비스에 대한 캐시를 제공하도록 SSSD 구성에서 다룹니다.
검증
ipa host-show
명령을 실행하여 SSH 공개 키가 지정된 호스트와 연결되어 있는지 확인합니다.$ ipa host-show client.ipa.test ... SSH public key fingerprint: SHA256:qGaqTZM60YPFTngFX0PtNPCKbIuudwf1D2LqmDeOcuA client@IPA.TEST (ssh-rsa) ...
49.4.3. IdM 웹 UI를 사용하여 호스트의 SSH 키 삭제
호스트 키가 만료되거나 더 이상 유효하지 않으면 제거할 수 있습니다. IdM 웹 UI를 사용하여 개별 호스트 키를 제거하려면 아래 단계를 따르십시오.
사전 요구 사항
- IdM 웹 UI 또는 호스트 관리자 역할을 관리하는 관리자 권한
절차
- IdM 웹 UI에 로그인합니다.
-
Identity>Hosts 탭
으로 이동합니다. - 편집할 호스트 이름을 클릭합니다.
-
호스트 설정
섹션에서 제거할 SSH 공개 키 옆에 있는삭제
를 클릭합니다. -
페이지 상단에서
저장
을 클릭합니다.
검증
-
Host Settings
(호스트 설정) 섹션에서 키가 더 이상SSH 공개 키
아래에 나열되지 않았는지 확인합니다.
49.4.4. IdM CLI를 사용하여 호스트의 SSH 키 삭제
호스트 키가 만료되거나 더 이상 유효하지 않으면 제거할 수 있습니다. IdM CLI를 사용하여 개별 호스트 키를 제거하려면 아래 단계를 따르십시오.
사전 요구 사항
- IdM CLI 또는 호스트 관리자 역할을 관리하기 위한 관리자 권한
절차
호스트 계정에 할당된 모든 SSH 키를 삭제하려면 키를 지정하지 않고
ipa host-mod
명령에--sshpubkey
옵션을 추가합니다.$ kinit admin $ ipa host-mod --sshpubkey= --updatedns host1.example.com
--updatedns
옵션을 사용하여 호스트의 DNS 항목을 업데이트하는 것이 좋습니다.
IdM은 유형이 업로드된 키에 포함되지 않은 경우 키에서 자동으로 키 유형을 결정합니다.
검증
ipa host-show
명령을 실행하여 SSH 공개 키가 더 이상 지정된 호스트와 연결되지 않았는지 확인합니다.ipa host-show client.ipa.test Host name: client.ipa.test Platform: x86_64 Operating system: 4.18.0-240.el8.x86_64 Principal name: host/client.ipa.test@IPA.TEST Principal alias: host/client.ipa.test@IPA.TEST Password: False Member of host-groups: ipaservers Roles: helpdesk Member of netgroups: test Member of Sudo rule: test2 Member of HBAC rule: test Keytab: True Managed by: client.ipa.test, server.ipa.test Users allowed to retrieve keytab: user1, user2, user3