미국 이외의 모든 SSH 액세스를 차단하고 싶습니다. 내가 팔로우한 전체 iptables는 다음과 같습니다.http://www.howtoforge.com/xtables-addons-on-centos-6-and-iptables-geoip-filtering
# Generated by iptables-save v1.4.7 on Wed Jul 3 02:30:42 2013
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [1749:280570]
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j DROP
-A INPUT -m geoip --src-cc US --dport 22 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 21 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 3000:3050 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT
# Completed on Wed Jul 3 02:30:42 2013
-A INPUT -m geoip --src-cc US --dport 22 -j ACCEPT
저는 관리자가 근무하는 미국에서만 SSH를 허용한다는 목표로 이 작업을 수행했습니다 . 현재로서는 오류가 발생합니다.
iptables: Applying firewall rules: iptables-restore v1.4.7: Couldn't load match `geoip':/lib64/xtables/libipt_geoip.so:
cannot open shared object file: No such file or directory Error occurred at line: 10
고쳐 쓰다
파일을 검색해봤지만 아무것도 찾을 수 없습니다. 노하우를 찾아보니 Xtables-addons 버전이 1.37이어서 2.5로 업데이트했는데 아무것도 바뀌지 않았습니다. 확인해 보니 /lib64/xtables/
수많은 파일이 있지만 geoip 파일은 없습니다. 그래서 여기가 Xtables-addon 설치 수정을 시작해야 할 곳이라고 생각합니다.
답변1
오늘 이 문제가 발생하여 마침내 해결되었습니다. selinux 때문이니까 그냥 selinux를 껐다가 시스템 시작 후 다시 켜면 됩니다. 이것은 나에게 효과적이었습니다. 시도해 볼 수 있습니다 :)
selinux를 허용으로 설정
sudo vim /etc/selinux/config
SELINUX=공차
rc.local을 통해 실행을 강제하도록 selinux를 설정합니다.
vim /etc/rc.d/rc.local
설정력 1