오프쇼어 VPS에서 SSH 보안 강화
비밀번호 인증을 비활성화하고, 키를 강제하고, 포트를 변경하고, 소스 IP를 제한하고, 시도 횟수를 제한하세요.
SSH는 인터넷에서 가장 많이 공격받는 서비스입니다. 포트 22의 기본 구성 SSH는 시간당 수백 번의 무차별 대입 시도를 볼 수 있습니다. 강화는 10분이 걸리며 노이즈를 0으로 줄입니다.
1단계: SSH 키 인증만 사용
/etc/ssh/sshd_config 파일을 편집하세요: code:PasswordAuthentication no PubkeyAuthentication yes ChallengeResponseAuthentication no KbdInteractiveAuthentication no
리로드: systemctl reload ssh. 현재 세션을 닫기 전에 새 터미널에서 키로 로그인할 수 있는지 확인하세요 — 잠기면 복구 콘솔 부팅이 필요합니다.
2단계: 포트 22에서 이동
높은 비표준 포트(예: 22222)를 선택하세요. sshd_config에서: code:Port 22222
방화벽 업데이트(ufw allow 22222/tcp), SSH 재로드, 포트 22 닫기.
3단계: 루트 로그인 비활성화
sudo 권한이 있는 비루트 사용자 생성: code:adduser deploy usermod -aG sudo deploy rsync -a ~/.ssh deploy@/home/deploy/ chown -R deploy:deploy /home/deploy/.ssh
그런 다음 sshd_config에서: code:PermitRootLogin no
이제부터 ssh deploy@HOST 후 sudo로 관리 명령을 실행합니다.
4단계: fail2ban으로 속도 제한
설치에 대해서는 /kb/fail2ban-setup을 참조하세요. fail2ban은 /var/log/auth.log를 모니터링하고 N번 실패한 후 IP를 차단합니다.
5단계: 선택 사항 — 소스 IP 제한
알려진 IP(홈 VPN, 사무실, 배스천 호스트)에서만 SSH를 사용하는 경우 소스에서 허용 규칙을 추가하세요: code:Match Address 1.2.3.4,5.6.7.8 AllowUsers deploy