1 분 소요

1. 서론

    오늘은 몇가지 프로토콜과 보안, 그리고 리눅스에 대하여 배워보았다.

2. 본론

1. 네트워크

1-1. ICMP

//ICMP
1. ICMP 오류 메세지 (Error Reporting Message)
- 목적지도달불가 (Destination Unreachable) : Type 3
    Network Unreachable(Code 0)
    Host Unreachable(Code 1)
    Protocol Unreachable(Code 2)
    Port Unreachable(Code 3)
- 재지정 (Redirect) : Type 5
- 시간 초과 (Time Exceeded) : Type 11
    - 패킷이 루프를 돌거나, 과밀 발생, 타이머 값이 너무 낮게 설정된 경우
- 매개변수 문제 (Parameter Problem) : Type 12

2. ICMP 정보성 메세지 (Informational Message) / 질의 메세지 (Query Message)
- 호스트 간에 연결성 검사 확인 등(Ping, Traceroute)
- 송신측에 일방적으로 오류 보고를 하는 ICMP 오류메세지와는 달리, 송수신간 양방향으로 질의-응답 형태
- 에코 응답 (Echo Reply) : Type 0
    Ping Echo 응답, 데이터를 다시 리턴해 줌
- 에코 요청 (Echo Request) : Type 8
    Ping Echo 요청, 옵션 데이터 가능
- 라우터 광고 (Router Advertisement) : Type 9
- 라우터 요청 (Router Solicitation) : Type 10

image

bootp_dhcp

image

1-2. Telnet / SSH / HTTP

1. Telnet
//TCP 23, Plain Text
1-1. login password 설정
# sh line
!
# conf t
# username admin password cisco123
!
# line vty 0 4
# login local
!
# enable secret ccie 123
1-2. telnet 자체 password 사용
# line vty 0 4
# no login local
# password cisco
# login
1-3. sh run상에 보이는 모든 password 암호화
# conf t
# service pasword-encryption

2. SSH
//TCP 22, RSA(공개키, 비대칭키)
//'hostname'과 'domain-name' 필수
# hostname R1
# ip domain-name kedu.edu
# crypto key generate rsa
768 //SSHv2를 사용하기 위해서는 768bits 이상으로 설정 필요
# ip ssh version 2
!
# line vty 0 4
# transport input ssh
# login local
//VM에서 SSH 연결 확인. hostname에 ip

//R1
# conf t
# ip host R1 192.168.10.254
//VM
C:\Windows\System32\drivers\etc
hosts 메모장으로 열어서
192.168.10.254  R1 추가
//VM에서 SSH 연결 확인. hostname에 R1

image

3. HTTP
//R1
# conf t
# username admin15 privillege 15 password cisco123
# ip http server
# ip http authentication local
# ip http secure-server
//위 사진에서 'Show diagnostic log' -> Exec를 통해 HTTP상으로 관리 가능

1-3. Spoofing Attack

1. ARP Spoofing Attack
//Kali (root / P@ssw0rd)
//Bridged / ip
# vim /etc/network/interfaces
ip(10.5.1.x/8), gateway(10.0.0.1), dns(168.126.63.1)
//promiscuous mode(패킷을 무조건 수용하는 모드)
# ifconfig eth0 promisc
# arp -a
# arpspoof -i eth0 -t 타겟ip 속일ip
# arp -a //MAC변경된것 확인
2. DHCP Spoofing
//Kali
//Discover 지속적으로 뿌려서 ip pool 말리기
# dhcps -i eth0 -D 192.168.10.100 //DHCP서버 ip

2. 리눅스

1. GRUB

//Protecting GRUB with a password

1. 첫번째 방법
# su
# grub2-setpassword
Enter password:
Confirm the password:

2. 두번째 방법
# su
# cd /etc/grub.d
# ls -ltr
# vim 00_header
: set nu
i (insert mode)
//아래내용 맨 마지막 라인에 추가 후 저장
cat << EOF
set superusers="grubadmin"
password grubadmin 1234
EOF
# grub2-mkconfig -o /boot/grub2/grub.cfg

2. SELinux

# getenforce //SELinux 상태 확인
# sestatus //자세하게 확인
# setenforce 0 //0(permissive), 1(enforcing). 일시적으로 SELinux 상태 변경. 단, SELinux가 disabled된 상태에서는 작동 x
# vim /etc/sysconfig/selinux //재부팅 후에도 SELinux 상태 적용
SELinux=enforcing //강제(enforcing), 허용(permissive), 비활성화(disabled)
# fixfiles -F onboot //disabled 상태에서 SELinux를 켜준 후 라벨링 새롭게 해주기 위해 필요

3. Apache(http)

# su
# dnf install -y httpd
# systemctl enable --now httpd
# firewall-cmd --add-service=http --permanent
# firewall-cmd --reload
# firewall-cmd --list -all
# cd /var/www
# ls -ltr //html 디렉토리 권한 확인 후, 필요하면 수정
# cd html
# vim index.html
<html>
<head>
<title>한국정보교육원</title>
</head>
<body bgcolor="white" text="black" link="blue" vlink="purple" alink="red">
<p><span style="font-size:40pt;"><marquee style="left:">방가 방가 ^.^ 우리는 클라우트컴퓨팅 501호랍니다.~</marquee></span></p>
</body>
</html>
# systemctl restart httpd

3. 결론

    주말이다.

4. 참고자료

1. 자료

  1. 문웅호, 정보통신망

2. Cisco Docs

  1. ARP
  2. CDP / VLAN
  3. Frame Relay
  4. Static Routing
  5. VLAN
  6. VTP
  7. Routed Port
  8. AD
  9. Route Selection
  10. FHRP
  11. HSRP
  12. DHCP
  13. DNS
  14. STP
  15. NAT
  16. EtherChannel
  17. DTP
  18. RIP
  19. NTP
  20. Offset List
  21. Password Encryption
  22. ACL
  23. CAR Attack
  24. Broadcast
  25. Port Assignments
  26. IPv6 Static Routing
  27. HSRP for IPv6
  28. Clock Rate
  29. DHCPv6 Guard
  30. EIGRP
  31. Express Forwarding
  32. Routing and Switching
  33. Load Balancing
  34. Ping, Traceroute
  35. Load Balancing
  36. Fast Switching
  37. CEF
  38. DNS
  39. SSH

3. Linux

  1. rhel9’s docs
  2. Linux Directory Structure
  3. File Types in Linux
  4. fstab
  5. Vim Cheat Sheet
  6. Protecting GRUB with a password
  7. SELinux

클라우드 엔지니어를 꿈꾸며 공부를 시작한 초보 엔지니어입니다. 틀린점 또는 조언해주실 부분이 있으시면 친절하게 댓글 부탁드립니다. 방문해 주셔서 감사합니다 :)

댓글남기기