키 인증을 사용하여 CentOS 서버에서 보다 안전한 SSH 로그인을 구현하는 방법

王林
풀어 주다: 2023-07-05 18:15:07
원래의
1886명이 탐색했습니다.

키 인증을 사용하여 CentOS 서버에서 더욱 안전한 SSH 로그인을 달성하는 방법

서버 관리에서는 시스템 보안을 보장하는 것이 중요합니다. SSH(Secure Shell)는 Linux 및 UNIX 서버에 대한 원격 로그인에 사용되는 암호화된 네트워크 프로토콜입니다. 서버의 보안을 더욱 강화하기 위해 비밀번호 로그인 대신 키 인증을 사용할 수 있습니다. 이 기사에서는 CentOS 서버에서 보다 안전한 SSH 로그인을 구현하는 방법을 소개하고 해당 코드 예제를 제공합니다.

1단계: 키 쌍 생성

먼저 로컬 컴퓨터에서 키 쌍을 생성합니다. 터미널 창을 열고 다음 명령을 입력합니다:

ssh-keygen -t rsa
로그인 후 복사

이 명령은 RSA 알고리즘을 사용하여 키 쌍을 생성합니다. Enter를 눌러 키 저장 경로와 파일 이름을 확인하세요. 그러면 키의 비밀번호를 입력하라는 메시지가 표시됩니다. 비밀번호를 설정하거나 공백으로 두고 Enter를 눌러 키 생성을 계속할 수 있습니다.

성공적으로 생성되면 지정된 경로에서 id_rsa(개인 키) 및 id_rsa.pub(공개 키)라는 두 개의 파일을 찾을 수 있습니다.

2단계: 공개 키를 서버에 복사

다음으로, 공개 키를 CentOS 서버에 복사하세요. 다음 명령을 사용하여 공개 키를 서버에 복사합니다.

ssh-copy-id user@server_ip_address
로그인 후 복사

"user"를 CentOS 서버의 사용자 이름으로 바꾸고 "server_ip_address"를 서버의 IP 주소로 바꿉니다. 인증을 위해 비밀번호를 입력하라는 메시지가 표시됩니다.

공개 키를 성공적으로 복사하면 다음과 같은 출력이 표시됩니다.

Number of key(s) added: 1
로그인 후 복사

3단계: SSH 서비스 구성

서버에서 SSH 구성 파일을 열어 설정합니다. 다음 명령을 사용하여 파일을 엽니다.

sudo vi /etc/ssh/sshd_config
로그인 후 복사

다음 줄의 주석 처리가 제거되었는지 확인하고 값을 다음과 같이 설정합니다.

PubkeyAuthentication yes
PasswordAuthentication no
PermitRootLogin no
로그인 후 복사

주석 처리를 제거하면 공개 키 인증이 허용되고 비밀번호 인증이 비활성화되며 직접 루트 로그인이 허용되지 않습니다. 변경한 후 파일을 저장하고 닫습니다.

다음으로 SSH 서비스를 다시 시작하여 변경 사항을 적용합니다.

sudo systemctl restart sshd
로그인 후 복사

4단계: SSH 로그인 테스트

이제 구성이 완료되었습니다. 다음 명령을 사용하여 SSH 로그인이 성공했는지 테스트할 수 있습니다.

ssh user@server_ip_address
로그인 후 복사

"user"를 사용자 이름으로 바꾸고 "server_ip_address"를 서버의 IP 주소로 바꿉니다. 시스템은 개인 키를 사용하여 인증을 시도합니다.

모든 것이 올바르게 설정되면 비밀번호를 입력하지 않고도 CentOS 서버에 성공적으로 로그인할 수 있습니다.

보너스 팁:

  • 서버 보안을 더욱 강화하려면 암호를 사용하여 개인 키를 보호할 수 있습니다. 이렇게 하면 개인키를 도난당하더라도 인증을 통과할 수 없습니다.
  • 개인 키 파일의 권한이 600으로 설정되어 있는지 확인하세요. 이는 소유자만 읽고 쓸 수 있다는 의미입니다.
  • 다양한 키 쌍을 사용하여 여러 사용자를 인증하세요.
  • 보안 강화를 위해 정기적으로 키 쌍을 교체하세요.

요약:

키 인증을 사용하면 서버 보안이 크게 향상되고 악의적인 로그인과 비밀번호 무차별 크래킹을 방지할 수 있습니다. 이 문서에서는 CentOS 서버에서 보다 안전한 SSH 로그인을 구현하는 방법을 설명하고 해당 코드 예제를 제공합니다. 다음 단계를 따르면 서버에 대한 키 인증을 쉽게 설정하고 시스템을 안전하게 유지할 수 있습니다.

위 내용은 키 인증을 사용하여 CentOS 서버에서 보다 안전한 SSH 로그인을 구현하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿