[네트워크][보안] 방화벽으로 DMZ 구성 시 터미널 접속 방법
방화벽등으로 DMZ 을 구성하여 서비스 포트 이외의 나머지 포트를 원천적으로 차단하고 접근 허가 네트워크 지역을 물리적으로 정해 놓은 경우 ( 관공서 같은 곳 ..) 원격지에서 관리하기 위한 불편함이 있다.
source ip address 로 접근 허가를 신청해도 정책적인 문제로 허가가 안될때…아래 방법을 쓰면 된다.
즉…허가된 포트 (80번)를 이용하여 ssh, 이나 telnet 으로 접속을 하는 방법이다.
telnet 처럼 xinetd 데몬을 이용하는 경우는 간단히 /etc/service 에서 telnet 의 23번 포트 부분을 80 으로 변경 해 주면 되지만..ssh 처럼 standalone 방식으로 구동되는 경우는 iptables 로 처리가 가능하다.
====================================
#!/bin/sh
#
#
# This NetFilter Ruleset is Default Ruleset in Technical team of clunix
# This script is Firewall configuration for local host
#
# maker – alang@clunix.com
#
touch /var/lock/subsys/local
modprobe ip_conntrack_ftp
modprobe ip_conntrack_irc
modprobe ipt_string
modprobe ipt_state
modprobe ipt_REJECT
modprobe ipt_REDIRECT
modprobe ipt_MASQUERADE
modprobe ip_nat_snmp_basic
modprobe ip_nat_ftp
modprobe ip_nat_irc
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -F
iptables -X
iptables -t nat -F
iptables -t mangle -F
iptables -t filter -F
iptables -t nat -X
iptables -t mangle -X
iptables -t filter -X
iptables -t nat -Z
iptables -t mangle -Z
iptables -t filter -Z
iptables -P INPUT DROP
iptables -P OUTPUT ACCEPT
iptables -P FORWARD DROP
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -i eth0 -p all -j ACCEPT
iptables -A INPUT -m state –state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -p ALL -i eth0 -j ACCEPT
iptables -A FORWARD -m state –state ESTABLISHED,RELATED -j ACCEPT
iptables -t nat -A PREROUTING -p tcp -d 211.241.38.180 –dport 80 -j DNAT –to 211.241.38.180:22
====================================
즉 방화벽에서 허가된 80 포트로 접근하여 접속하고자 하는 서버에 도착하면 해당 서버의 iptables 에서 DNAT 기능으로 80번으로 들어오는 포트를 22번 포트로 전달하는 방식이다.