IPSec
[ IPSec ]
- 네트워크에서 데이터 무결성, 기밀성, 인증을 제공하는 보안 프로토콜
- VPN에서 주로 사용되며,데이터 패킷을 암호화해 안전한 통신을 보장
- GRE Tunnel : 두 네트워크를 연결하는 가상의 터널
- 암호화를 제공하지 않기 때문에 IPsec을 통해 암호화 적용하여 보안 강화
IPSec 형성 조건
[ ISAKMP 협상 ]
- ISAKMP : 두 장치가 보안 터널을 설정하기 위한 첫 번째 단계
- ISAKMP 설정이 양쪽에 동일하게 설정되어 있어야만 협상 성공
✔ 협상 조건
-
- ISAKMP 정책 일치 (암호화 방식, 해시 방식, 인증 방식 등)
- Pre-shared Key (사전 공유 키) 동일하게 설정
[ IPsec 터널링 ]
- ISAKMP가 성공하면 IPsec 터널이 생성됨
- 양쪽 장치에 동일한 IPsec Transform-set이 설정되어 있어야 함
✔ IPsec 조건
-
- Transform-set (암호화/인증 설정) 동일
- Crypto Map 설정 동일
- ACL에서 트래픽 허용 조건 일치

GRE Tunneling 설정되어있는 상태
[ ACL 설정 ]
<R1>
Router(config)#access-list 100 permit gre host 1.1.23.1 host 1.1.34.2
Router(config)#access-list 100 permit gre 192.168.10.0 0.0.0.255 host 1.1.34.2
[ 암호화 정책 ]
#crypto isakmp policy [정책 ID]
#authentication pre-share
= 사전 공유 키를 사용하여 상대방 인증
#encryption 3des
= 데이터 암호화 방식
#hash md5
= 데이터 무결성 검증 방식
Router(config)#crypto isakmp policy 10
Router(config-isakmp)#authentication pre-share
Router(config-isakmp)#encryption 3des
Router(config-isakmp)#hash md5
[ IPsec 설정 ]
#crypto isakmp key [사전 공유 키] address [상대방 IP]
#crypto ipsec transform-set test esp-3des esp-md5-hmac
= 데이터 암호화 및 인증 설정 방식
Router(config)#crypto isakmp key 1234 address 1.1.34.2
Router(config)#crypto ipsec transform-set test esp-3des esp-md5-hmac
[ Crypto Map 설정 ]
#crypto map vpn-map 10 ipsec-isakmp
= 암호화 매핑 설정
#match address 100
= 동일한 ACL 번호 입력
#set peer [상대방 IP]
#set transform-set [test]
= 암호화 인증 방식
Router(config)#crypto map vpn-map 10 ipsec-isakmp
Router(config-crypto-map)#match address 100
Router(config-crypto-map)#set peer 1.1.34.2
Router(config-crypto-map)#set transform-set test
[ 암호화 적용 ]
해당 인터페이스에 vpn-map을 적용해 IPsec 보안 활성화
Router(config-crypto-map)#int s0/0/1
Router(config-if)#crypto map vpn-map
[ 확인 방법 ]

PC끼리 ping 돌리고 Simulation 해서
Type : IPSec 올라오면 IPsec이 성공적으로 작동
CISCO ASA 방화벽 및 ROUTER 설정
- Cisco ASA 방화벽 및 Router를 이용한 네트워크 방화벽 구성 및 NAT 설정
- Cisco ASA 방화벽을 이용한 기본 인터넷 연결 및 보안 구성을 위한 설정
- 방화벽
- 네트워크 보안을 강화하기 위한 강력한 솔루션
- 주로 기업 네트워크에서 내부 네트워크 보호, 트래픽 제어, 인터넷 접근 관리 등 수행
- security-level이 높은 곳에서 낮은 곳은 통신 허용, 낮은 곳에서 높은 곳으로는 통신 차단됨

- DHCP로 내부 Client에 IP 자동 할당
- NAT 설정으로 내부 IP → 외부 IP로 변환
- ACL 설정으로 ICMP 및 TCP 트래픽 허용
[ Router 설정 ]
<R1>
Router(config)# int fa0/1
Router(config-if)# ip add 1.1.1.1 255.255.255.0
→ 여기까지만 설정하면 방화벽이 트래픽을 차단하고 있기 때문에 R1과 PC1,2 통신 X
[ 방화벽(ASA) 설정 ]
< 내부 네트워크 : LAN >
nameif inside
내부 네트워크는 신뢰할 수 있는 구간이기 때문에 최고 보안 레벨 적용
192.168.1.1 = 내부 네트워크의 Gateway
ciscoasa(config)# int vl 1
ciscoasa(config-if)# ip add 192.168.1.1 255.255.255.0
ciscoasa(config-if)# nameif inside
ciscoasa(config-if)# security-level 100
(보안 레벨 100 설정)
< 외부 네트워크 : WAN >
nameif outside
외부 네트워크는 신뢰할 수 없는 구간이기 때문에 최저 보안 레벨 적용
1.1.1.2 = 외부 네트워크에 연결될 때 사용하는 공인 IP 주소
ciscoasa(config)# int vl 2
ciscoasa(config-if)# ip add 1.1.1.2 255.255.255.0
ciscoasa(config-if)# nameif outside
ciscoasa(config-if)# security-level 0
(보안 레벨 0 설정)
< VLAN 할당 >
e0/0을 VLAN2에 할당
(e0/1은 이미 기본 VLAN1에 속해 있기 때문에 별도 설정 X)
ciscoasa(config)# int e0/0
ciscoasa(config-if)# switchport access vl 2
< DHCP 및 DNS 설정 >
DHCP 설정으로 내부 네트워크에서 IP 주소 자동 할당
DHCP 범위 : 192.168.1.5 ~ 192.168.1.35 지정
DNS 서버로 Google DNS (8.8.8.8) 지정
ciscoasa(config)# dhcpd add 192.168.1.5-192.168.1.35 inside
ciscoasa(config)# dhcpd dns 8.8.8.8 interface inside
< 기본 Routing 설정 >
기본 Routing을 통해 인터넷 트래픽을 Router의 IP인 1.1.1.1로 전송
0.0.0.0 0.0.0.0 = Default Route (기본 경로)
1.1.1.1 = Next Hop IP Address (트래픽을 전달할 Gateway)
ciscoasa(config)# route outside 0.0.0.0 0.0.0.0 1.1.1.1
< NAT 설정 >
내부 IP 주소를 외부 IP 주소로 변환
dynamic interface는 외부 인터페이스의 IP 주소를 동적으로 할당받아 NAT 변환 수행
ciscoasa(config)# object network LAN
ciscoasa(config-network-object)# subnet 192.168.1.0 255.255.255.0
ciscoasa(config-network-object)# nat (inside,outside) dynamic interface
< ACL 설정 >
ACL을 통해 모든 ICMP/TCP 트래픽 허용
access-group으로 해당 ACL을 외부 인터페이스에 적용
ciscoasa(config)# access-list in_to_internet extended permit icmp any any
ciscoasa(config)# access-list in_to_internet extended permit tcp any any
ciscoasa(config)# access-group in_to_internet in interface outside
< PC DHCP 설정 >
외부 네트워크 PC IP DHCP 할당

[ 결과 ]
외부 네트워크에서 내부 네트워크로만 통신 됨 (내부 → 외부 X)

PORT-SECURITY
[ Port-Security ]
- 포트 보안 기능을 활성화해 네트워크 보안 강화
- Switch Port 도청 방지
- MAC Address 스캐닝 방지
- 불법 장치 연결 차단
- Spoofing, Sweeping 공격 방어

#switchport mode access
Port Security는 Access Port에서만 작동함
#switchport port-security
포트 보안 기능 활성화
#switchport port-security maximum [연결 가능한 최대 장치수]
초과 시 보안 위반 발생으로 자동으로 shutdown 됨
#switchport port-security violation shutdown
포트 보안 규칙 위반 시 해당 포트가 자동으로 sh 되도록 설정
[ 차단된 포트 복구 명령어 ]
Switch(config-if)# shutdown
Switch(config-if)# no shutdown
Switch(config)#interface fastEthernet 0/23
Switch(config-if)#switchport mode access
Switch(config-if)#switchport port-security
Switch(config-if)#switchport port-security maximum 2
Switch(config-if)#switchport port-security violation shutdown
[ 결과 ]

정상적으로 포트 연결되어 있음

ping 세 번째 돌리고 shutdown된 상태
해당 포트에 최대 2개의 장치만 연결 가능
3번째 장치가 연결되면 포트를 자동으로 Shutdown (차단)
등록된 MAC Address 이외 모두 차단
[ 등록된 PC MAC Address 확인 ]
Switch(config)#do show port-security address

초기 Mac Table (아무것도 없음)
[ PC MAC Address 확인 ]
C:\>ipconfig /all

Switch(config)#int fa0/23
Switch(config-if)#switchport mode access
Switch(config-if)#switchport port-security
Switch(config-if)#switchport port-security mac-address 0030.A30A.9B61
Switch(config-if)#switchport port-security violation shutdown
[ 결과 ]

17번 PC MAC 주소 등록되어 포트 정상 연결

추가 PC 연결 후 IP 입력하면 포트 차단됨
✔ 추가된 PC도 허용하고 싶다면?
maximum 수 조정 후 MAC 주소 등록, 포트 복구
Switch(config-if)#switchport port-security maximum 2
Switch(config-if)#switchport port-security mac-address 0002.1721.2265
Switch(config-if)#shutdown
Switch(config-if)#no shutdown

정상적으로 연결됨
'IT 엔지니어 > Security' 카테고리의 다른 글
Directory Indexing (0) | 2025.04.11 |
---|---|
SNORT RULEs (0) | 2025.04.10 |
SNORT / IDS (0) | 2025.04.08 |
IPTABLES / UTM (0) | 2025.04.04 |
Security 4 STEP (0) | 2025.04.01 |