오랫동안 Linux를 사용해 왔다면 의심할 여지 없이 SSH라는 도구에 대해 들어본 적이 있을 것입니다. 일반적으로 SSH로 알려진 Secure Shell은 클라이언트와 원격 서버 간의 보안 연결을 설정하기 위한 네트워크 프로토콜입니다. 사용자가 네트워크를 통해 원격으로 다양한 유형의 컴퓨터에 안전하게 로그인할 수 있도록 설계되었습니다. 여기에서는 SSH 키를 설정하고 서버에 쉽게 복사하는 방법을 보여줍니다.
SSH 설치
시작하려면 SSH 서버를 설치해야 합니다. openssh-server
를 찾아 설치할 수 있습니다. 소프트웨어 센터 또는 패키지 관리자의 패키지. 또는 서버에 있는 경우(또는 터미널 사용을 선호하는 경우) 터미널을 열고 다음 명령을 입력합니다.
# Ubuntu/Debian sudo apt install openssh-server # Fedora/CentOS/REHL sudo dnf install openssh-server
Linux에서 SSH 활성화
OpenSSH 서버가 컴퓨터에 설치되면 시스템 장치를 시작하고 활성화해야 합니다. 그렇게 하려면 터미널에 다음 명령을 입력하기만 하면 됩니다.
sudo systemctl enable --now ssh
SSH 키 생성
openssh 서버를 설치했으면 SSH 키 쌍 생성을 시작할 수 있습니다. 계속하기 전에 기존 키 쌍이 없는지 확인하십시오. 이 프로세스는 기존 키 쌍을 덮어쓰게 됩니다.
기존 키 쌍이 있는지 확인하려면 다음 명령을 사용하십시오.
ls -la ~/.ssh
기존 키 쌍이 있는 경우 위의 명령은 "id_rsa" 및 "id_rsa.pub" 파일을 표시해야 합니다.
기존 SSH 키 쌍이 없는지 확인한 후 새 키 생성을 진행할 수 있습니다. 그렇지 않으면 이전 키를 백업하여 분실하지 않도록 하십시오.
새 키를 생성하려면 다음 명령을 사용하십시오.
ssh-keygen -t rsa -b 4096
위의 명령은 ssh-keygen
을 호출합니다. SSH 키 쌍을 대화식으로 생성하는 유틸리티. -t
사용 옵션에서 생성할 키 유형을 지정합니다. 이 경우 RSA 키를 생성합니다.
-b
도 사용합니다. 키의 비트 수를 지정하는 옵션입니다. RSA 키를 사용하는 경우 최소 비트 크기는 1024입니다. 지정하지 않으면 3072비트의 키를 생성합니다.
키를 사용하여 SSH에 연결할 때 경로를 입력하지 않도록 SSH 키를 저장하는 기본 위치를 사용하는 것이 좋습니다.
암호로 키를 암호화하지 않으려면 Enter 키를 눌러 건너뜁니다.
원격 서버에 키 복사
이제 새로운 SSH 키 쌍을 생성했으므로 관리하려는 원격 시스템에 업로드해야 합니다.
이를 수행하는 가장 효율적인 방법은 ssh-copy-id
를 사용하는 것입니다. 명령. 다음과 같이 명령을 사용하십시오.
ssh-copy-id remote_user@remote_IP
별도의 파일 이름으로 키 파일을 사용하는 경우 다음 명령을 사용하여 키 파일의 경로를 지정할 수 있습니다.
ssh-copy-id -i ~/.ssh/id_rsa remote_user@remote_IP
원격 컴퓨터에 처음 로그인하는 경우 지문을 수락해야 합니다.
그런 다음 원격 사용자의 SSH 암호를 입력합니다.
인증되면 ssh-copy-id
명령은 id_rsa.pub
의 내용을 추가합니다. 원격 시스템의 "~/.ssh/authorized_keys" 파일에 대한 키를 누르고 연결을 닫습니다.
원격 시스템에 로그인
위의 모든 단계를 성공적으로 완료하면 이제 비밀번호 없이 원격 서버에 로그인할 수 있습니다.
다음 명령을 사용하여 테스트할 수 있습니다.
ssh remote_user@remote_ip
키에 대해 활성화된 암호가 없으면 자동으로 로그인됩니다.
자주 묻는 질문
1. SSH는 안전한가요?
SSH는 인증된 사용자가 원격 시스템에 로그인할 수 있도록 하는 강력한 보안 도구입니다. 그러나 구성 파일에서 허용하는 만큼만 안전합니다. 구성되지 않은/잘못 구성된 SSH 서버는 해커 및 제3자 액세스에도 취약할 수 있습니다. SSH 구성을 설치한 직후에 보안을 유지해야 합니다.
2. SSH 인증 키는 어디에 있습니까?
SSH authorized_keys 파일은 각 사용자의 공개 키 파일을 보유하고 서버에 로그인할 수 있는 사용자를 지정합니다. Linux에서 authorized_keys 파일은 일반적으로 사용자의 홈 디렉토리에 있는 ".ssh" 폴더에 있습니다.
3. ssh-copy-id 권한 거부 문제를 어떻게 해결할 수 있습니까?
이것은 원격 서버에 이미 공개 키가 설정되어 있고 암호 인증을 비활성화한 경우에만 발생합니다. 이 문제를 해결하려면 먼저 서버에 로그인하고 "/etc/ssh/sshd_config" 파일에서 비밀번호 인증을 활성화한 다음 ssh-copy-id
를 실행하세요. 다시 명령하십시오.
새 키 파일을 복사했으면 암호 인증 옵션을 다시 비활성화해야 합니다.
마무리
이제 SSH를 설정하고 사용했으므로 다음으로 해야 할 일은 SSH 구성을 보호하는 것입니다. 또는 Windows를 사용하는 경우 Windows에서 SSH 키 쌍을 생성하는 방법을 알아보세요.