빠르고 더러운

빠르고 더러운

/etc/rc.firewall파일에는 공격자의 DDoSers IP를 금지할 목적으로 생성한 다음과 같은 추가 줄이 포함되어 있습니다.

${fwcmd} add deny ip from 122.228.19.80/24,\
                          185.234.219.65/24,\
                          92.118.38.57/24,\
                          185.36.81.143/24,\
                          141.98.10.137/24,\
                          45.125.66.144/24,\
                          185.100.87.190/24,\
                          45.142.195.6/24,\
                          45.143.223.52/24,\
                          103.7.10.131/24,\
                          52.178.192.68/24,\
                          80.82.77.33/24,\
                          164.68.112.178/24,\
                          81.95.5.34/24 to any

목록은 매주 극적으로 증가하고 있습니다. 텍스트 파일을 만들려면 어떻게 해야 합니까?ipfw이 IP는 그곳에서 직접 얻어지나요? 가장 쉬운 방법은 무엇입니까?

추신 : 이유를 찾을 수 없습니다숨다/mask 위의 IP는 실제로 무작위로 채워진 로그 파일이기 때문에 일반 사용자가 전혀 아닙니다! 다른 사람들도 이 사실을 알고 차단하는 것이 도움이 될 것입니다 :)

운영 체제: FreeBSD 12.1

답변1

빠르고 더러운

모든 구성은 ipfw명령을 실행하여 수행됩니다 ipfw. 귀하의 경우에는 포장되어 ${fwcmd}있으며매개변수 대체(바라보다쉿 (0)단락 Parameter Expansion). 그런 다음 이를 쉘 스크립트(일부 추가 도우미 기능 포함) /etc/rc.firewall로 처리할 수 있습니다 .sh

그렇다면 매우 간단합니다.

cat list.txt | xargs -I BANIP ${fwcmd} add deny ip from BANIP to any

파일은 list.txt다음으로 파이프됩니다.매개변수명령을 구성합니다. list.txt각 줄에는 IP 주소나 서브넷이 포함되어야 합니다.

예:

122.228.19.80
185.234.219.65
92.118.38.57/24
185.36.81.143/24

조용한

${fwcmd}귀하의 질문에서 확장이 무엇인지 알 수 없습니다 . 이렇게 간단할 수도 있습니다 ipfw. 스크립트에 사용하려면 다음을 사용하는 것이 가장 좋습니다 ipfw -q(참조ipfw(8)) 더욱 견고하게 만듭니다. 추가할 때 테이블을 생성하고 동일한 주소를 두 번 추가하는 것을 정상적으로 처리합니다.

시트

위에서 언급한 것처럼 여러 deny규칙을 추가하는 것은 약간 혼란스럽습니다. 표에 넣고 그 표를 바탕으로 규칙을 만들어 놓으면 훨씬 깔끔해집니다.

먼저 테이블 #1을 생성하고 채웁니다.

ipfw -q table 1 add 122.228.19.80
ipfw -q table 1 add 185.234.219.65
ipfw -q table 1 add 92.118.38.57/24
ipfw -q table 1 add 185.36.81.143/24

그런 다음 규칙에서 이 테이블을 사용합니다.

ipfw add deny ip from 'table(1)' to any

list.txt그런 다음 이전과 동일한 방법을 사용합니다 . 그런 다음 언제든지 테이블을 새로 고치고 다시 로드할 수 있습니다.

ipfw table 1 flush
cat list.txt | xargs ipfw -q table 1 add

위의 내용은 플레이하는 동안 명령줄에서 실행할 수 있습니다.

구성 스크립트의 맥락에서 보면 다음과 같습니다.

cat list.txt | xargs ${fwcmd} table 1 add
${fwcmd} add deny ip from 'table(1)' to any

주변의 "표시" table(1)는 쉘이 ()어떤 방식으로든 이를 해석하려고 시도하지 않도록 하기 위한 것입니다. 당신은 선택할 수 있습니다탈출하다그들도 마찬가지다. 결과는 동일하지만 인간이 읽기가 조금 더 어렵습니다.

${fwcmd} add deny ip from table\(1\) to any

관련 정보