>> Read Reply from No. 63599 article  
RE: 특정아이피만 텔넷이나 ftp를 가능하도록

등록 2002-12-30 10:17:00     조회 5
이름 송지석    

		: 리눅스시작한지 한달된 초짜입니다.
: 궁금한 게 있어서 이렇게 염치불구하고 자문을 구합니다.
: 다름이아니라 서버에 특정아이피만이 텔넷이나 에프티피를 가능하도록할려면
: 어떻게 하는지궁금합니다. /etc/host.conf를 건드니면 된다고 하던데...
: 전 어떻게 건드리는지도 어떻게 설정하는지 조차도 알지 못합니다.
: 고수님들 도와주세요.
특정 ip만 텔넷이나 ftp가 가능하게 하고 http등은 다른 모든 ip가 가능하게 하려면 iptables를 
쓰시는 것이 편할 것입니다.  저는 rc.local 파일에 스크립트를 호출하도록 해놓고 사용하는
데요. kltp.kldp.org에서 보고 따라한 것입니다. 저의 경우는 특정 ip의 특정 포트만 열어주고 
나머지는 다 거부합니다. /etc/rc.d/rc.local에
if [ -f /etc/sysconfig/iptables ]; then
/etc/sysconfig/iptables
fi
를 추가하고
 /etc/sysconfig/iptables 에
 다음과 같이 씁니다.
 ============다음=============
#!/bin/sh
 # 모듈을 올린다.
/sbin/modprobe ip_conntrack
/sbin/modprobe ip_conntrack_ftp
/sbin/modprobe iptable_nat
/sbin/modprobe iptable_mangle
# 우선 모든 Rule을 정리한다.
 /sbin/iptables -F
 /sbin/iptables -A INPUT -m state --state RELATED -j ACCEPT
 # localhost에서의 traffic을 받아들인다.
 /sbin/iptables -A INPUT -i lo -j ACCEPT
#특정 ip의 ssh(22번) telnet(23번) ftp(21,20번) 포트를 열어준다.
/sbin/iptables -A INPUT -p tcp --destination-port 22 -s 192.168.1.100 -j ACCEPT
/sbin/iptables -A INPUT -p tcp --destination-port 21 -s 192.168.1.100 -j ACCEPT
/sbin/iptables -A INPUT -p tcp --destination-port 20 -s 192.168.1.100 -j ACCEPT
/sbin/iptables -A INPUT -p tcp --destination-port 23 -s 192.168.1.100 -j ACCEPT
 # 확립된 연결에 대한 Packet을 받아들인다.
/sbin/iptables -A INPUT -i eth0 -p tcp ! --syn -j ACCEPT
#/sbin/iptables -A INPUT -i eth0 -p udp ! --syn -j ACCEPT
 # 인증 연결을 거부한다(그렇지 않을 경우 메일서버가 오랫동안 타임아웃 상태가 될 것이
다 /sbin/iptables -A INPUT -i eth0 -p tcp --destination-port 113 -j REJECT
 # echo나 목적지에 도착 못하거나 시간 초과된 icmp packet들을 받아들인다.
 /sbin/iptables -A INPUT -i eth0 -p icmp --icmp-type 0 -j ACCEPT
/sbin/iptables -A INPUT -i eth0 -p icmp --icmp-type 3 -j ACCEPT
/sbin/iptables -A INPUT -i eth0 -p icmp --icmp-type 11 -j ACCEPT
 # 다음으로 각각에 대한 정책을 세운다.
/sbin/iptables -P INPUT ACCEPT
/sbin/iptables -P OUTPUT ACCEPT
/sbin/iptables -P FORWARD ACCEPT
 # 위의 경우가 아닌 경우 1~30000번 포트는 다 거부한다.
/sbin/iptables -A INPUT -p tcp --dport 1:30000 -j DROP
# 핑도 안되게 한다.
/sbin/iptables -A INPUT -p icmp --icmp-type echo-request -j DROP
===============여기 까지==========
만약에 특정 ip만 모든 포트로 다 접속 되게 하고싶다면
/sbin/iptables -A INPUT -s 192.168.1.100 -j ACCEPT
로 포트 번호별로 열어둔 것을 대체하시면 됩니다.
특정 포트 외에 다른 포트는 다른 ip에서도 접속이 가능하게 하시려면
먼저
/sbin/iptables -A INPUT -p tcp --destination-port 22 -s 192.168.1.100 -j ACCEPT
로 포트를 열어놓고
/sbin/iptables -A INPUT -p tcp --destination-port 22 -j REJECT
로 모든 ip에 대해 포트를 거부시켜놓고
/sbin/iptables -A INPUT -j ACCEPT
으로 모두 열어주시면 되겠네요. (먼저 설정한 규칙이 우선하므로 모든 ip를 거부해도 먼저
 설정한 192.168.1.100의 경우는 포트가 열립니다.)  더 자세한 것은 kldp.org나 iptables 메뉴얼을 
참고 하세요.  ps. 물론 위 스크립트는 실행 옵션이 되어있어야 겠지요.--with lots of love ^^;;
이름
암호


>> 관련글
63599 특정아이피만 텔넷이나 ftp를 가능하도록  리눅스초짜  2002.12.29  ....
  답장 RE: 특정아이피만 텔넷이나 ftp를 가능하도록  송지석  2002.12.30  ....
Register [ localhost 목록보기 윗글 아랫글
글쓰기
답장쓰기 수정 삭제
정규표현식 [ 상세 검색 ]
페이지로딩: [ 0.47 초 ] 작업시간: [ 0.11 초 ]

Copyleft 1999-2026 by JSBoard Open Project
Theme Designed by IDOO All right reserved
[TOP]

적수네 동네
+
| 적수네 동네
| 공부방
| 리눅스 잡지 서고
| LSN 소스
| 링크 모음
+---+
게시판
+
| 떠들어보세!
| 질문과 답변
| 새소식과 정보
| 1원짜리 팁?
| 대화방
+---+
칼럼?
+
| 세하 훔쳐보기
| Welcome2nite
| 혜진의 염장판
+---+
리눅스 상표권
+
| 반대 서명란
| 토론 게시판
+---+
GNU
+
| GNU 선언문
| GNU GPL
| GNU 미러 목록
+---+
프로젝트?
+
| 리눅스카운터
| RC5DES
| 실질헌법 제작
+---+
커널 소식
+
| 안정 버젼: 2.4.14
+---+
테마 선택
+
LSN 방송국?
+
| OFF AIR
+---+
회원
+
| 로그인
+---+
[ 적수네 동네 ] [ 리눅스 상표권 독점 반대 ] [ 한글 리눅스 문서 프로젝트 ] [ KrLine ] [ 사랑넷 ] [ Valid HTML 4.0! ] [ SlashDot ] [ Freshmeat ]
Copyleft (C) 1998-2001 Byeong-Chan Kim . License
TIME: 1791065493
System by WYZsoft, HDD by I.O.Linux, Mizi Research, Embryo, WOWLINUX, Domain by SarangNet, Network by KrLine.