Linux에서 SSH 키를 설정하는 방법

SSH는 훌륭한 기술입니다. 이를 사용하여 VPN 트래픽을 숨기고 웹사이트에 대한 연결을 보호하는 등의 작업을 수행할 수 있습니다. 유일한 문제는 원격 시스템에 로그인을 시도할 때마다 비밀번호를 입력해야 하고 지루할 수 있다는 것입니다. Bash 스크립트를 사용하여 SSH를 통해 한 번에 많은 시스템에 연결하려는 개발자이거나 Secure Shell을 사용하고 암호 입력에 지친 개발자라면 암호 없는 SSH라는 솔루션이 있습니다. 이 프로세스에는 호스트 시스템에서 보안 SSH 키를 생성하고 이를 PC에 액세스하는 방법으로 공유하는 작업이 포함됩니다. 이렇게 하면 암호를 모르더라도 키를 가진 사람이라면 누구나 로그인할 수 있습니다. 진행 방법은 다음과 같습니다.

SSH 키란 무엇입니까?

SSH 키는 Secure Shell과 함께 사용되는 고유한 식별 파일입니다. 이 키의 목적은 사용자에게 고유한 ID를 제공하고 로그인할 때 “신뢰할 수 있음”으로 표시하는 것입니다. 이러한 키 자체는 누군가의 ID를 증명하는 파일 그 이상입니다. 실제로 SSH를 사용하면 사용자가 암호가 아닌 키로 로그인할 수 있습니다. 즉, SSH를 통해 로그인할 때마다 비밀번호를 입력해야 하는 대신 SSH 키를 사용합니다.

SSH 키는 Linux 설치의 안전한 어딘가에 배치되며 거기에서 암호 없이 원하는 만큼 원격 시스템에 로그인할 수 있습니다.

보안 SSH 키 생성

보안 SSH 키를 먼저 생성하려면 SSH가 실행 중이어야 합니다. 이것이 반드시 SSH 서버가 필요하다는 것을 의미하지는 않는다는 것을 이해하십시오. 기본 SSH 도구와 기술이 Linux PC에서 실행되고 있다는 것뿐입니다. SSH 설정 방법을 모르십니까? 여기에서 우리의 가이드를 따르십시오.

SSH 서버를 호스팅하는 시스템에서 항상 SSH 키를 생성하십시오. SSH 세션을 호스팅하지 않는 서버에서 생성하지 말고 SSH 호스트 시스템에 복사하십시오. 작동하지 않습니다.

키 생성 프로세스를 시작하려면 터미널을 엽니다. 터미널 창에서 다음을 실행합니다.

ssh-keygen -t rsa

ssh-keygen을 실행하면 “Generating public/private rsa key pair”가 인쇄됩니다. 이것은 시스템이 사용할 공개 키와 개인 키를 모두 생성하고 있음을 의미합니다. 공개 키는 누구나 사용할 수 있는 것이므로 배포하는 것이 좋습니다. 반면에 개인 키는 누구와도 공유해서는 안 되는 것입니다. 따라서 이름이 “개인”입니다.

  자연어 처리란 무엇이며 어떻게 작동합니까?

키는 /home/username/.ssh/id_rsa에 저장됩니다.

참고: ~/.ssh 폴더에는 키가 포함되어 있으므로 삭제하지 마십시오. 어떤 식으로든 이 폴더를 변조한 다음 이 시스템에 원격으로 로그인하려고 하면 SSH 프롬프트가 실패합니다. 또한 경고를 인쇄하고 사용자를 잠급니다.

원격 시스템의 SSH 키

이제 SSH 키(공개 및 비공개 키 모두)가 생성되고 사용할 준비가 되었으므로 로그인하려는 시스템에 이를 복사해야 합니다. SSH를 통해 로그인하려는 모든 시스템에서 이 프로세스를 반복하는 것이 중요합니다. 그렇지 않으면 키가 없는 사용자는 암호 방법을 사용하여 로그인해야 합니다.

원격 시스템에 키를 추가하려면 이 예를 따르십시오. SSH를 통해 호스트 시스템에서 이 작업을 수행하고 있는지 확인하십시오.

ssh [email protected] mkdir -p .ssh

이 ssh 명령을 실행하면 원격 시스템의 홈 디렉토리에 숨겨진 ~/.ssh 폴더가 생성됩니다(로그인에 사용된 사용자 포함). 이 폴더는 새로 생성된 SSH 키 파일을 복사할 위치이므로 중요합니다.

SSH 키 파일을 복사하려면 SSH 호스트 시스템에서 키가 필요한 원격 시스템으로 또 다른 명령을 실행하십시오.

cat .ssh/id_rsa.pub | ssh [email protected] 'cat >> .ssh/authorized_keys'

복사는 네트워크 속도에 따라 몇 초 정도 걸립니다. 완료되면 원격 PC에 생성된 키가 있으며 암호 없이 SSH 호스트 PC에 로그인할 수 있습니다.

SSH 키 백업

SSH 키는 유용한 것으로 각각 고유합니다. 이 때문에 백업하는 것이 최선의 조치입니다. 문제는 다른 곳에 저장하면 다른 사람이 SSH 키를 찾을 수 있으므로 보관하고 스스로 사용할 수 있다는 것입니다. 따라서 문제는 SSH 키를 안전하게 백업하는 좋은 방법은 무엇입니까? 암호화.

가장 빠르고 효율적이며 가장 쉬운 암호화 방법은 GnuPG를 사용하는 것입니다. 도구 자체는 이미 Linux에 있는 대부분의 암호화 도구에 내장되어 있으며 파일을 암호화할 때 가장 많이 사용됩니다. GnuPG를 설치하려면 터미널을 열고 패키지 관리자에서 “gpg”를 검색하십시오. 프로그램은 매우 모호한 Linux 배포판에서도 쉽게 찾을 수 있어야 합니다.

GPG가 실행되고 실행되면 ~/.ssh 디렉토리를 tar 아카이브 파일로 압축하여 암호화 프로세스를 시작하십시오. 이렇게 하면 ~/.ssh 폴더에 있는 모든 단일 파일을 개별적으로 암호화할 필요가 없습니다.

tar -czvf ssh-stuff.tar.gz /home/username/.ssh

압축이 완료되면 암호화 프로세스를 시작합니다.

  BBS를 기억하십니까? 오늘 방문하는 방법은 다음과 같습니다.

참고: 암호화하기 전에 터미널에서 gpg를 실행하여 새 키링을 생성하십시오.

gpg -c ssh-stuff.tar.gz

암호화 프로세스가 완료되면 GnuPG는 “ssh-stuff.tar.gz.gpg”라는 레이블이 있는 파일을 출력합니다. 파일의 잠금 해제된 원본 버전을 자유롭게 삭제하십시오. 백업 아카이브를 해독하려면 다음을 수행하십시오.

gpg ssh-stuff.tar.gz.gpg