[linux] SSH 보안 설정

여기서는 Linux에서 SSH를 보안 설정하는 방법을 알아보겠습니다.

1. SSH 서버 설치 및 업데이트

가장 먼저 해야 할 일은 SSH 서버를 설치하고 최신 상태로 유지하는 것입니다. 대부분의 Linux 시스템에서 OpenSSH 패키지를 사용합니다.

sudo apt update
sudo apt install openssh-server

이후 정기적으로 업데이트를 확인하고 적용하는 것이 중요합니다.

2. 기본 포트 변경

SSH의 기본 포트인 22번을 사용하는 것은 보안상 취약점을 노출시킬 수 있습니다. 따라서 포트를 변경하는 것이 좋습니다. 아래와 같이 설정을 변경할 수 있습니다.

sudo nano /etc/ssh/sshd_config

Port 22 라인을 찾아 다른 포트로 변경합니다.

3. 키 기반 인증 사용

비밀번호 인증 대신 SSH 키를 사용하여 로그인할 수 있도록 설정하는 것이 좋습니다. 키 기반 인증은 더욱 안전한 방법입니다.

sudo nano /etc/ssh/sshd_config

다음 라인을 찾고 수정합니다.

PasswordAuthentication no

4. 루트 로그인 제한

보안을 강화하기 위해 루트로의 직접 로그인을 제한할 수 있습니다. 대신 다른 사용자로 먼저 로그인한 후 su 명령어를 사용하여 권한 상승하는 것이 좋습니다.

sudo nano /etc/ssh/sshd_config

다음 라인을 찾아 수정합니다.

PermitRootLogin no

5. 로깅 설정

SSH 로깅을 설정하여 로그인 시도 및 보안 이벤트를 추적할 수 있습니다.

sudo nano /etc/ssh/sshd_config

원하는 로깅 레벨을 설정합니다.

LogLevel VERBOSE

6. 방화벽 구성

마지막으로 방화벽을 구성하여 SSH 접속을 제어하는 것이 중요합니다. SSH를 사용하는 특정 IP 주소만 허용하거나 기타 필요한 규칙을 추가할 수 있습니다.

이렇게 SSH를 보안 설정하는 것은 시스템 보안을 강화하는데 매우 중요합니다. 꼭 필요한 경우가 아니라면 SSH를 외부망에 직접 노출시키는 것을 피하는 것도 좋은 방법입니다.