ssh-copy-id 명령을 사용하는 방법

How Use Ssh Copy Id Command



ssh-copy-id 명령은 원격 서버의 인증된 키에 SSH 키를 설치할 수 있는 간단한 도구입니다. 이 명령은 SSH 키 로그인을 용이하게 하여 각 로그인에 대한 암호의 필요성을 제거하여 암호가 없는 자동 로그인 프로세스를 보장합니다. ssh-copy-id 명령은 암호화된 SSH 연결을 사용하여 원격 시스템 관리를 수행하기 위한 도구인 OpenSSH의 일부입니다.

이 기사에서는 ssh-copy-id 도구를 사용하여 SSH 로그인을 보다 원활하고 안전하게 만드는 방법을 보여줍니다.







ssh-copy-id 명령을 설치하는 방법

OpenSSH 패키지의 일부인 ssh-copy-id 도구는 모든 주요 Linux 배포 저장소에서 사용할 수 있으며 패키지 관리자를 사용하여 이 명령을 설치할 수 있습니다.



Debian에 ssh-copy-id 도구를 설치하려면 다음 명령을 사용하십시오.



수도 apt-get 업데이트 && 수도 apt-get 설치openssh-클라이언트

OpenSSH가 설치되면 명령줄에서 ssh-copy-id 도구를 사용할 수 있습니다.





$ ssh 복사 ID

용법:/usr/오전/SSH 복사 ID[-시간|-?|-NS|-N] [-NS[ID_파일]] [-p 포트] [[-또는<SSH -또는옵션>]...] [사용자@]호스트 이름-f: 강제 모드-확인하지 않고 키 복사만약이미 설치되어 있습니다. -n: 테스트 실행-실제로 복사된 키가 없습니다.-시간|-?: 이것을 인쇄돕다

스크립트가 공개 키 인증 프로세스를 더 쉽고 효율적으로 만들기 때문에 ssh-copy-id를 사용하는 것은 간단합니다. 이 도구를 사용하는 방법에 대해 알아보기 전에 먼저 SSH 공개 키 인증이 작동하는 방식에 대해 설명합니다.

노트 : SSH 공개 키 인증이 어떻게 작동하는지 이미 알고 있다면 이 부분을 건너뛰고 ssh-copy-id 명령을 즉시 사용하는 방법에 대해 자세히 알아보세요.



SSH 공개 키 인증

공개 SSH 키 인증은 사용자가 암호화 방식으로 생성된 키를 사용하여 원격 서버에 로그인할 수 있도록 하는 SSH 인증 방법입니다.

SSH 키는 원시 암호보다 더 안전하며 SSH에 로그인하는 훨씬 더 효율적인 방법을 제공합니다. SSH 키는 자동화되며 일단 인증되면 로그인할 때마다 비밀번호가 필요하지 않습니다.

SSH 키를 사용하려면 먼저 키를 생성합니다.

SSH 키를 생성하는 방법

SSH 키를 생성하려면 OpenSSH의 일부로 제공되는 ssh-keygen 도구를 사용하십시오. 이 도구는 아래와 같이 ~/.ssh 디렉토리에 저장된 공개 및 개인 키 파일을 생성합니다.

$SSH 키젠

공개 생성/개인 rsa 키 쌍.
입력하다파일 ~에 어느키를 저장하기 위해(/뿌리/.ssh/아이디_rsa):
생성된 디렉토리'/루트/.ssh'.
암호 입력(비어있는~을위한암호 없음):
동일한 암호를 다시 입력하십시오.
귀하의 신분증이 저장되었습니다~에 /뿌리/.ssh/아이디_rsa.
공개 키가 저장되었습니다~에 /뿌리/.ssh/id_rsa.pub.
주요 지문은 다음과 같습니다.
SHA256:ddVOQhS6CGt8Vnertz9aiSnvOUKmSpPrZ+gI24DptsA 루트@사용자 키의 randomart 이미지는 다음과 같습니다.
+---[RSA 2048]----+
| 오=오 |
| 영형. 오|
| . . +. +. |
| . + + 오 .o|
| 에스 + . . |
|. 오 ..오 오 + .|
|.그리고 +. +. + + |
|오. = o.o+ .o.+..|
| .o .. oo =+ o = o.+ |
+----[SHA256]-----+

SSH-copy-id를 사용하여 SSH 키를 복사하는 방법

SSH 키를 생성한 후에는 원격 시스템 authorized_keys 파일에 SSH 키를 수동으로 추가하거나 ssh-copy-id 명령을 사용할 수 있습니다.

이 프로세스를 더 쉽게 만들기 위해 ssh-copy-id 명령을 사용합니다. 다음과 같이 ssh-copy-id 명령을 호출하고 공개 키에 대한 경로를 전달하기만 하면 됩니다.

$SSH 복사 ID-NS~/.ssh/id_rsa.pub 사용자@77.134.54.101-NS 6576

위의 명령을 입력한 후 다음과 같은 출력을 얻어야 합니다.

/usr/오전/ssh-copy-id: INFO: 키 소스(NS)설치될:'/루트/.ssh/id_rsa.pub'
/usr/오전/ssh-copy-id: INFO: 로그 시도 중~에새로운 키로(NS), 이미 설치된 항목을 필터링하려면
/usr/오전/SSH 복사 ID: 정보:1열쇠(NS)설치가 남아 있습니다- 만약이제 하라는 메시지가 표시됩니다.설치새 키 사용자@77.134.54.101의 비밀번호:
키 수(NS)추가:1이제 다음을 사용하여 컴퓨터에 로그인해 보십시오.'ssh -p '6576' ' [이메일 보호됨] ''확인하고만들다키만(NS)당신이 원하는 추가되었습니다.

노트 : 개인 키를 다른 컴퓨터에 복사하지 마십시오.

명령이 성공적으로 실행되면 다음과 같이 업로드한 키를 사용하여 서버에 로그인을 시도합니다.

$SSH -NS 6576링크피@77.134.54.101

위의 명령을 사용하려면 아래 출력과 같이 공개 키에 대한 암호를 입력해야 합니다.

암호 입력~을위한열쇠'/루트/.ssh/id_rsa':
마지막 로그인: 3월 금5 14: 06:16 2021년173.208.98.186부터

위의 명령을 사용하면 사용자의 암호를 묻지 않고 원격 호스트에 로그인할 수 있습니다. 이전에 설정한 키의 암호를 입력하라는 메시지가 표시될 수 있습니다.

SSH-copy-id 명령 옵션

제공된 인수를 사용하여 ssh-copy-id 명령의 작동 방식을 수정할 수 있습니다. 도움말 페이지를 보려면 ssh-copy-id -h 명령을 사용하거나 인수 없이 ssh-copy-id 명령을 사용하십시오.

  1. -i 인수 : 이 인수는 사용할 ID 파일을 지정합니다. 즉, 지정된 원격 호스트에 복사됩니다. -i 인수를 지정하지 않으면 ~/.ssh 디렉토리에 있는 *.pub 패턴이 일치하는 모든 파일이 추가됩니다.
  2. -f 플래그 : 이 플래그는 키가 서버의 authorized_keys에 미리 구성되어 있는지 여부를 확인하지 않는 강제 모드를 활성화합니다. -f 플래그는 키를 추가하여 종종 서버에 설치된 동일한 키의 여러 복사본을 생성합니다.
  3. -p 플래그 : 이 플래그는 원격 호스트에 연결할 SSH 포트를 지정합니다. 이 플래그는 기본 SSH 포트가 사용되지 않을 때 사용됩니다.
  4. -n 플래그 : 이 플래그는 원격 호스트에 설치하지 않고 설치할 키를 인쇄하는 테스트 실행을 수행합니다.

결론

이 가이드에서는 ssh-copy-id 명령을 사용하여 원격 호스트에 SSH 키를 설치하는 방법을 보여주었습니다. 이것은 키를 설치하는 간단하고 효율적인 방법일 수 있지만 키를 잘못 구성하면 보안 문제가 발생하거나 시스템이 잠길 수 있습니다. 따라서 이 프로세스를 실험할 때 매우 주의해야 합니다.