access-list standard, extended 실습

sso·2025년 4월 21일

네트워크/보안

목록 보기
26/38

엑세스 리스트

IOSv1

conf t
ip access-list ?
extended
helper
log-update
logging
resequence
standard

ip access-list standard PERMIT
permit 10.1.1.242 0.0.0.0 (와일드카드마스크)
deny any

end
conf t
int g0/0
ip access-group PERMIT in
end

conf t
username ccnp privilege 15 password cisco
line vty 0 4
login local
transport input all

IOSv2

conf t
access-list 1 permit any
access-list 1 ?
deny
permit
remark - 내가 만든 access-list에 설명을 추가

telnet 10.1.1.241

ping 10.1.1.241

docker2

ping 10.1.1.241

access-list 1 remark ## NAT config ##
확인 방법
do sh ip access-list : 내가 입력한 설명 확인
do sh run | s access-list : 실제 내가 입력한 명령어 확인

access-class PERMIT in

IOSv2에서 ACL 설정

  • 10.1.1.241로 부터 출발하는 telnet 접속 허용
  • 나머지 IP에서 출발하는 telnet 접속 차단

IOSv2

conf t
username ccnp privilege 15 password cisco
line vty 0 4
login local
transport input all
end

access-class PERMIT in

telnet 포트번호로 접속하기(telnet 기본 포트 23)
telnet 10.1.1.241 23

ssh 서버 설정

conf t
hostname IOSv1
ip domain name cisco.com
crypto key generate rsa moduls 1024
end
ssh -l ccnp 10.1.1.241

ssh ccnp@10.1.1.241

ping 10.1.1.241 so g0/2


IOSv2에서 ACL 설정 (telnet, ssh 서버 설정)

  • 10.1.1.241로 부터 출발하는 telnet/ssh/icmp 접속은 허용
  • 나머지 IP에서 출발하는 접속은 차단

IOSv2

conf t
username ccnp privilege 15 password cisco
line vty 0 4
login local
transport input all
end

conf t
hostname IOSv2
crypto key generate rsa moduls 1024
end
ssh -l ccnp 10.1.1.241

conf t
ip access-list standard PERMIT
permit 10.1.1.241
deny any
int g0/0
ip access-group PERMIT in

extended 사용해보기

IOSv1

conf t
ip access-list extended PERMIT
10 permit ip host 10.1.1.242 host 10.1.1.241 log
20 deny ip any any log
do sh run int g0/0

범위로 지정
10 permit ip 10.1.1.240 0.0.0.3 host 10.1.1.241
do sh ip access-list
15 permit ip 10.1.1.192 0.0.0.31 host 10.1.1.241
do sh ip access-list

IOSv2

ping 10.1.1.241 - 성공
ping 10.1.1.241 so g0/2 - 차단
telnet 10.1.1.241 - 성공
telnet 10.1.1.241 /source-interface g0/2 - 차단
ssh -l ccnp 10.1.1.241 - 성공

extended 범위로 지정

순서 permit ip 네트워크 와일드카드마스크 host 목적지ip

IOSv1

conf t
ip access-list extended PERMIT
10 permit ip 10.1.1.240 0.0.0.3 host 10.1.1.241
do sh ip access-list
15 permit ip 10.1.1.192 0.0.0.31 host 10.1.1.241
do sh ip access-list

docker2

ping 10.1.1.241 -

R1

telnet, ping - 차단됨, 이건 20 deny에 의해 차단됨

16 permit ip host 10.1.1.222 host 10.1.1.126 log
10.1.1.222에서 출발해서 10.1.1.126으로 가는 핑 허용 처리
no 16 - 번호만 입력해도 삭제 가능

번호 정리

conf t
ip access-list resequence PERMIT 10 10
시작값 10, 증가값 10으로 순서 재정렬
sh ip access-list


IOSv1에서 ACL 설정
R1 -> PC1 : 접속 허용

R1의 ip가 .237으로 설정하여 입력

IOSv1

conf t
ip access-list exteneded PERMIT
50 permit ip host 10.1.1.237 host 10.1.1.190 log
(어디서, 어디로 가는걸 허용할지 적어주면 됨)

conf t
no ip access-list extended PERMIT
ip access-list extended PERMIT
deny ip 10.1.1.192 0.0.0.31 host 10.1.1.241
deny ip 10.1.1.224 0.0.0.15 host 10.1.1.241

  • deny ip any any (묵시적 차단, default option)
    permit ip any any
    ➡ 차단경로 제외 모두 오픈

docker2

ping 10.1.1.241 - 차단

IOSv2

ping 10.1.1.241 - 성공


IOSv2에서 아래 대상은 차단, 나머지는 허용

  • 출발지 : 10.1.1.0/25, 10.1.1.128/26
  • 목적지 : 10.1.1.242
  • 프로토콜 : ICMP

IOSv1

conf t
ip http server
ip http secure-server
ip http authentication local
do sh ip access-list <- 8.8.8.8 차단인지 확인

webterm

주소창에서 10.1.1.241 입력 후 http 접속 확인


/25 - a, /26 - b, /27 - c, /28 - d

  1. webterm에서 인터넷 접속 확인

    IOSv1

    conf t
    int g0/3
    ip nat outside
    no sh

    int g0/0
    ip nat inside
    end

    conf t
    access-list standard NAT_PERMIT
    permit 10.1.1.192 0.0.0.31
    permit 10.1.1.224 0.0.0.15
    deny any log
    end

    conf t
    ip nat inside source list NAT_PERMIT int g0/3
    ping 8.8.8.8

  2. IOSv2에서 기본 경로 학습(외부로 나가는 경로)

IOSv2

conf t
ip route 0.0.0.0 0.0.0.0 10.1.1.241
ping 8.8.8.8

  1. IOSv1에서 NAT 설정 범위 : C, D 영역만 NAT 적용
  2. IOSv1에서 ACL 이용하여, webterm의 인터네 접속 차단(http, https)
  1. IOSv2에서 ACL 이용하여, ubuntudocker의 DNS 접속 차단

deny udp 10.1.1.192 0.0.0.31 host 10.1.1.241

  1. IOSv1, IOSv2의 기존 ACL 설정 삭제 (access-list 지우라는 뜻)
  2. IOSv1의 TELNET, SSH 서버 접속만 차단, 나머지(HTTP, ICMP 등)는 허용
profile
오늘도 하나씩 해결해 나가자!

0개의 댓글