728x90
728x90
SSH(Secure Shell)는 네트워크를 통해 컴퓨터에 안전하게 로그인하고 명령을 실행할 수 있도록 해주는 프로토콜입니다. 기존의 비밀번호 기반 인증 방식은 보안에 취약할 수 있지만, SSH의 공개키/개인키 인증 방식은 더욱 안전하고 편리한 접속을 제공합니다. 이 글에서는 맥 환경에서 SSH를 이용하여 공개키/개인키 방식으로 서버에 접속하는 방법을 단계별로 자세히 알아보겠습니다.
SSH 공개키/개인키 인증의 개념
SSH 공개키 인증 방식은 비대칭 암호화를 이용하여 사용자를 인증하는 방법입니다. 공개키와 개인키로 이루어진 키 쌍을 생성하고, 공개키는 서버에 등록하고 개인키는 사용자가 보관합니다. 서버는 클라이언트가 보낸 메시지를 개인키로 암호화하여 복호화할 수 있는지 확인하여 사용자를 인증합니다. 즉, 개인키는 사용자만 가지고 있기 때문에 더욱 안전한 인증 방식이라고 할 수 있습니다.
맥에서 SSH 키 쌍 생성하기
- 터미널 열기: 맥에서 터미널 앱을 실행합니다.
- SSH 키 쌍 생성: 다음 명령어를 실행하여 SSH 키 쌍을 생성합니다.
- -t rsa: RSA 알고리즘으로 키 쌍을 생성합니다.
- -b 4096: 키 길이를 4096비트로 설정합니다.
- 모든 프롬프트에 엔터를 누르면 기본 설정으로 생성됩니다.
- 생성된 개인키는 ~/.ssh/id_rsa, 공개키는 ~/.ssh/id_rsa.pub에 저장됩니다.
생성된 공개키를 서버로 전송하기
- ssh-copy-id 명령어 사용:
- -i: 공개키 파일을 지정합니다.
- 사용자명@서버IP주소: 접속할 서버의 사용자명과 IP 주소를 입력합니다.
- 이 명령어를 실행하면 공개키가 서버의 ~/.ssh/authorized_keys 파일에 자동으로 추가됩니다.
개인키를 사용하여 서버에 접속하기
- SSH 접속:
- -i: 개인키 파일을 지정합니다.
- 비밀번호를 입력하지 않고 서버에 접속할 수 있습니다.
SSH 설정 파일 생성 (선택 사항)
- ~/.ssh/config 파일 생성:
- 파일 내용 추가:
Host 별칭 HostName 서버IP주소 User 사용자명 IdentityFile ~/.ssh/id_rsa
- 별칭을 사용하여 서버에 간편하게 접속할 수 있습니다.
주의 사항
- 개인키 보안: 개인키는 절대 다른 사람에게 공개하거나 네트워크에 노출시키면 안 됩니다.
- 서버 설정: 서버의 sshd_config 파일에서 PubkeyAuthentication yes로 설정되어 있어야 공개키 인증이 가능합니다.
- SSH agent: SSH agent를 사용하면 개인키의 비밀번호를 한 번만 입력하고 여러 번 접속할 수 있습니다.
추가 정보
- ssh-keygen 옵션: 다양한 옵션을 통해 키 쌍 생성 시 더욱 세밀하게 설정할 수 있습니다.
- SSH config: 더 많은 설정 옵션을 통해 SSH 접속 환경을 커스터마이징할 수 있습니다.
- SSH tunneling: SSH를 통해 다른 포트로 연결하거나, SOCKS 프록시를 설정할 수 있습니다.
결론
SSH 공개키/개인키 인증 방식은 비밀번호를 기억할 필요 없이 안전하게 서버에 접속할 수 있는 효과적인 방법입니다. 위에 설명된 단계들을 따라 설정하면 맥에서 SSH를 이용하여 더욱 안전하고 편리하게 서버 관리를 할 수 있습니다.
주의:
- 보안을 위해 개인키는 반드시 안전한 곳에 보관해야 합니다.
- 서버의 SSH 설정을 정확하게 확인해야 합니다.
- SSH 접속 시 발생하는 문제는 다양한 원인이 있을 수 있으므로, 구체적인 상황에 맞는 해결 방법을 찾아야 합니다.
728x90
728x90
'홈서버 구축 일대기..' 카테고리의 다른 글
source ~/.bash_profile을 계속 입력해야 하는 이유 (0) | 2024.12.03 |
---|---|
Homebrew로 macOS에 MariaDB Server 설치 (1) | 2024.12.03 |
Homebrew: macOS에서 개발 환경을 쉽게 관리하는 필수 도구 (0) | 2024.12.01 |
DOS 유저를 위한 Linux 터미널 환경 설정 가이드: alias를 활용한 최적화 (0) | 2024.12.01 |
독Doock 설정 (0) | 2024.12.01 |