kex_exchange_identification: read: Connection reset by peer 대응 fail2ban 설정

황인호·2024년 2월 5일
0

개인 서버를 운영중인데 ssh 가 안돼는 오류가 있었다

kex_exchange_identification: read: Connection reset by peer

이런 오류가 발생했다

에러 해결방법은 재부팅하면 된다고해서 재부팅 하니까 ssh 잘 접속된다

접속하고 /var/log/auth.log 확인해보니까

여러 ip 에서 이상한 계정으로 수천번 이상 로그인 시도를 하려고한 기록을찾았다
이거때문인거같아서 찾아보니까

Brute-force 혹은 무차별 대입 공격이란다...

로그인을 시도할수있는 횟수를 정하고 로그인이 지정한 횟수를 초과할경우
IP 를 차단 시켜주는게 fail2ban 이라고해서 설치했음

Fail2ban은 SSH 로그인 시도를 필터를 통해 걸러주고, 자동으로 차단 해주는 역할을 함

  1. 설치 명령어 : apt install fail2ban

  2. 경로이동 : cd /etc/fail2ban

  3. 파일복사 : cp jail.conf /etc/fail2ban/jail.local

  4. 설정값 수정 : nano jail.local
    들어가서 쭉내리다보면 sshd 부분있음 거기서 설정값 수정

[sshd]
enabled = true
port    = ssh
filter  = sshd
logpath = /var/log/auth.log
maxretry = 3
  1. systemctl 등록 : systemctl enable fail2ban

  2. systemctl 시작 : systemctl start fail2ban

  3. 차단된 IP 확인 : fail2ban-client status sshd

  4. 차단 해제 명령어 : fail2ban-client set sshd unbanip <IP_ADDRESS>

  5. 차단 등록 명령어 : fail2ban-client set sshd banip <IP_ADDRESS>

  6. 설정 재적용 : systemctl restart fail2ban.service

전세계에서 들어오는 브루투포스 공, 무차별 대입을 막을수 있음

profile
성장중인 백엔드 개발자!!

0개의 댓글