SSH란 무엇인가 홈서버 보안과 기본 포트 변경 이유

·

, ,

내 환경 기준

제가 홈서버에서 SSH를 다룰 때 기준으로 보는 환경은 Rocky Linux 9.x, Docker + Compose v2, Oracle Cloud Free Tier ARM 인스턴스입니다. NAS는 Synology DSM 7.x 계열을 함께 쓰는 경우가 많습니다. SSH의 기본 개념은 운영체제가 달라도 비슷하지만, 설정 파일 위치나 방화벽 명령은 환경에 따라 달라질 수 있습니다.

SSH 터미널 아이콘

SSH는 서버에 접속하는 안전한 통로입니다

SSH는 Secure Shell의 줄임말입니다. 내 컴퓨터에서 원격 서버에 접속해 명령어를 실행할 수 있게 해주는 보안 접속 방식입니다. 홈서버를 운영하다 보면 서버에 모니터와 키보드를 매번 연결하지 않고, 노트북이나 데스크톱의 터미널에서 바로 관리하는 일이 많습니다. 이때 가장 기본적으로 쓰는 접속 방식이 SSH입니다.

예를 들어 Rocky Linux 서버에 접속할 때는 보통 이런 형태로 입력합니다.

ssh 사용자명@서버IP

접속이 되면 로컬 터미널을 쓰는 것처럼 서버 안에서 파일을 확인하고, Docker 컨테이너를 재시작하고, 로그를 보거나 업데이트를 진행할 수 있습니다. 홈서버 운영에서는 사실상 기본 도구에 가깝습니다.

비밀번호보다 키 인증을 먼저 생각합니다

SSH 접속에는 비밀번호 로그인과 공개키 기반 인증 방식이 있습니다. 처음에는 비밀번호 로그인이 편해 보이지만, 외부 인터넷에 서버를 열어두면 무작위 로그인 시도가 들어오는 경우가 많습니다. 개인 홈서버라도 가능하면 SSH 키 인증을 사용하는 편이 낫습니다.

키 인증은 내 PC에 개인키를 두고, 서버에는 공개키를 등록해 접속하는 방식입니다. 비밀번호를 계속 입력하는 방식보다 관리가 깔끔하고, 비밀번호 대입 공격에 대한 부담도 줄일 수 있습니다. 다만 개인키 파일을 아무 곳에나 복사해두거나 권한을 느슨하게 관리하면 효과가 떨어지므로, 키 파일 관리도 함께 신경 써야 합니다.

기본 포트 22번을 바꾸는 이유

SSH의 기본 포트는 22번입니다. 문제는 공격자나 자동화된 스캔 도구도 이 사실을 알고 있다는 점입니다. 서버를 인터넷에 공개하면 22번 포트로 접속을 시도하는 로그가 금방 쌓이는 경우가 많습니다. 실제로 홈서버를 열어두면 내가 접속하지 않은 시간에도 낯선 IP에서 로그인 시도가 찍히는 일을 어렵지 않게 볼 수 있습니다.

물론 기본 포트를 바꾼다고 보안이 완성되는 것은 아닙니다. 포트 변경은 보안을 보장하는 설정이라기보다 노출을 줄이는 조치에 가깝습니다. 그래도 자동화된 무차별 대입 시도 중 상당수는 기본 포트부터 건드리기 때문에, 불필요한 로그와 공격 시도를 줄이는 데 도움이 됩니다.

포트 변경은 보안의 시작입니다

예를 들어 SSH 포트를 22번에서 2222번으로 바꾸면 접속 명령은 이렇게 달라집니다.

ssh -p 2222 사용자명@서버IP

Rocky Linux 9.x 기준으로는 보통 /etc/ssh/sshd_config 파일에서 Port 값을 조정합니다. 이후 sshd 서비스를 재시작하고, 방화벽에서도 새 포트를 열어줘야 합니다.

여기서 중요한 점은 기존 22번 접속을 바로 끊지 않는 것입니다. 새 포트로 접속이 되는지 반드시 다른 터미널에서 먼저 확인해야 합니다. 원격 서버에서 SSH 설정을 잘못 바꾸면 스스로 접속 경로를 막는 상황이 생길 수 있습니다.

같이 챙겨야 할 기본 설정

SSH 보안을 생각한다면 포트 변경과 함께 root 직접 로그인을 막는 설정도 자주 적용합니다. 일반 사용자로 로그인한 뒤 필요한 경우 sudo를 사용하는 방식이 관리 측면에서 더 낫습니다. 비밀번호 로그인을 끄고 키 인증만 허용하는 방식도 많이 씁니다.

다만 이런 설정은 접속 준비가 완전히 끝난 뒤 적용해야 합니다. 공개키 등록이 제대로 되지 않은 상태에서 비밀번호 로그인을 꺼버리면 접속이 막힐 수 있습니다. 직접 만질 수 있는 홈서버라면 복구가 비교적 쉽지만, 클라우드 인스턴스는 콘솔 접근 방법까지 미리 확인해두는 편이 안전합니다.

홈서버에서 SSH를 다루는 기준

SSH는 화려한 기능이라기보다 서버 운영의 기본 손잡이에 가깝습니다. 접속이 안정적이어야 업데이트를 하고, 장애가 났을 때 로그를 확인하고, Docker 서비스도 다시 올릴 수 있습니다. 그래서 홈서버를 처음 구성할 때 웹 서비스보다 먼저 SSH 접속 방식을 정리해두면 이후 관리가 훨씬 편해집니다.

기본 포트 변경만으로 충분한 보안이 되는 것은 아닙니다. 하지만 키 인증, 방화벽 제한, root 로그인 차단과 함께 적용하면 의미 있는 기본 관리가 됩니다. SSH는 한 번 설정하고 잊는 기능이라기보다, 서버에 들어가는 첫 번째 문이라는 기준으로 다루는 것이 좋습니다.

코멘트

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다