질문&답변
클라우드/리눅스에 관한 질문과 답변을 주고 받는 곳입니다.
리눅스 분류

조금 문제가 있는 것 같습니다...

작성자 정보

  • 그니 작성
  • 작성일

컨텐츠 정보

본문

덕분에 퍼다가 SSH 셋팅을 했습니다.

근데 다음 구문에 문제가 조금 있더군요.

iptables -A INPUT -p tcp --dport 22 --syn -m limit --limit 10/s --limit-burst 1 -j ACCEPT

말씀데로라면 10초 이내에 1회 까지만 ssh 초기 접속 시도에 대해 허용해야 하는데 구문상으로는 1초에 10회 (10/s) 접속요청을 허가하게 되어 사실상 계속적인 접속시도를 허가합니다. --limit-burst 1 은 처음 1개의 패킷을 의미하게 되어 처음 1회 접속시도후 끊어지더라도 바로 다시 접속요청이 허가됩니다.

그래서 이 구문을

iptables -A INPUT -p tcp --dport 22 --syn -m limit --limit 1/minute --limit-burst 1 -j ACCEPT

이렇게 바꿨습니다.

처음 1회는 허용하고 분당 허가회수는 1회로 제한됩니다. 같은 ip에서 접속시도시 실패하면 1분 이내에는 다시 접속이 안됩니다. 처음 1회 접속되면 패쓰워드 확인 횟수는 ssh config 에서 설정한데로 입니다 (한번에 끊어지는 것은 아니고요).

아무튼 저는 이렇게 설정해서 문제없이 쓰고 있습니다. 제가 쓰는 구문에도 문제가 있을 수도 있으니 테스트해보시기 바랍니다.

 

관련자료

댓글 2

그니님의 댓글

  • 그니
  • 작성일
아, 죄송...
limit 는 소스 ip 를 check 하지 않는군요.
위 설정대로 하면 여러명이 써야 할 때는 문제가 됩니다.
여러명이 써야 할 경우는 recent 구문이 유용할 것 같습니다.

홍보성님의 댓글

  • 홍보성
  • 작성일
//그니님.
limit 10/s는 10초 동안~ 이라는 조건으로 되있는걸로 알고 있습니다.
limit 1/m 은 1분 동안~ 이라는 조건이 되겠죠. 1분에 1번 접속허용은 너무 가혹하지 않나요~ ^^
--syn 신호로 초기 ssh 접근 시도라는걸 제한하여 ssh 1번 접속시 처음 발생하는 syn 신호만을 차단한거구요. 여러사람이 ssh 접근해야 되는 경우는 생각하지 않았네요. ㅎ

워낙 블루트포스 공격이 많아서 녀석들에게만 너무 신경 쓴 탓인거 같아요.ㅋㅋ
recent 구문 한번 고민해봐야겠습니다.

공지사항


뉴스광장


  • 현재 회원수 :  60,063 명
  • 현재 강좌수 :  35,955 개
  • 현재 접속자 :  194 명