2009-09-22 3 views
4

나는 MySQLd에 대한 네트워킹을 켜야하지만, 내가 할 때마다, 서버는 망각으로 무차별 강요 당한다. 일부 의미있는 암호 추측 스크립트는 서버에서 망치질을 시작하여 포트 3306에서 연결을 열고 임의의 암호를 영원히 시도합니다.MySQL에 대한 무차별 공격 방지?

어떻게 이런 일이 일어나지 않게 할 수 있습니까?

SSH의 경우, 나는 잘 작동하는 denyhosts를 사용합니다. MySQLd에서 denyhosts를 작동시키는 방법이 있습니까?

나는 또한 MySQL이 실행되고있는 포트를 변경 간주했지만,이 (가 새 포트를 발견한다면? 무엇을)

사람이 다른 아이디어가 있습니까 이상 만 정지 갭 솔루션보다 적은 ?

다른 경우, FreeBSD 6.x에서 MySQL 5.x를 실행하고 있습니다.

답변

0

단일 호스트가 만들 수있는 실패한 요청 수를 제한합니다.

+0

흠 ...이 규칙을 어느 수준에서 소개 하시겠습니까? 이것이 MySQL의 기능입니까? – mjv

+0

예, MySQL에서 어디에서 이것을합니까? –

4

방화벽 mysql 포트 아웃. 그러나 이것은 serverfault 영역에 속합니다.

+1

또한 사용자 설정시 호스트가 MySQL 서버에 연결할 수있는 범위를 제한하십시오. –

+0

실제로 스택 오버플로가 dba에 가깝습니다 .-)) 물론, 좋은 점은 아무런 해를 끼치 지 않지만 포트가 방화벽을 통해 방화벽을 작동 시키면 많은 도움이되지는 않습니다.) –

0

기본값 (3306)에서 다른 포트 번호로 변경하면 보안이 향상되지 않지만 대부분의 경우 (적어도 약간) 도움이됩니다. 당신은 실제로 그것을 시도 했습니까, 아니면 단지 고려 했습니까?

+0

포스트에서 언급했다. 나는 이것에 대한 더 나은 해결책을 기대하고있다. –

2

또한 MySQL이 실행되고있는 포트를 변경 간주했지만,이 이상적이지 만 정지 갭 솔루션 (그들이 새 포트를 발견 할 경우?)

멍청한에게 봇은 끊임없이 자신의 포트를 괴롭 히고 새로운 포트를 찾지 않습니다. 다른 포트로 이동하면 이제 을 해킹하는 사람들에 대해 걱정할 필요가 있습니다. 임의의 호스트를 검색하는 손상된 시스템의 인터넷 백그라운드 노이즈가 아닙니다. 이것은 큰 발전입니다.

데이터베이스에 몇 가지 특정 시스템 만 허용해야하는 경우 데이터베이스의 로컬 포트와 클라이언트 시스템간에 SSH 터널을 고려할 수 있습니다. 공개 인터넷에 데이터베이스 포트를 열려고하는 것은 매우 드뭅니다.

+0

로컬 SSH 터널은 좋은 생각처럼 들리지만, 터널에서 denyhosts를 사용할 수 있습니다. – Pascal

+0

+1 openvpn은 이상적인 솔루션입니다. –