Search Results for '-- STuDy --/리눅스'

2 POSTS

  1. 2016.11.08 [멀티캠퍼스] 리눅스 초급 교육 1일차
  2. 2016.02.16 [리눅스] tcpdump

리눅스교육(2016.1108-1111)_v0.3.xlsx

리눅스교육(2016.1108-1111)_v0.4.xlsx

 

 

멀티캠퍼스 : http://ksp.credu.com/

과목명 : 실전! 초보자를 위한 Linux

강사 : 강성진 / 초급과정

교재 : Fedora Core로 배우는 리눅스 서버관리입문 / 이광,김봉근,김용승 저

 

OS : CentOS 5.4

 

 

2016.11.08 - 1일차

 

Fedora   -->  RedHat Enterprise Linux  -->  CentOS

무료             유료                                  무료

신기술적용                                            신기술적용속도 느림

버그 많음

 

  1. 리눅스 서버 부팅 순서

가) 전원온 -> POST(PowerOnSelfTest) -> MBR 안의 GRUB 실행 -> init 확인 -> 필요한서비스 실행

  1) MBR : HDD의 첫 512 바이트를 명칭함

  2) GRUB : 부트로더, 커널로더

    - LILO : 예전의 부트로더

    - GRUB : 최근 부트로더, LILO 부더 성능 우수

  3) init : 런레벨 확인

    - 경로 : /etc/inittab

    - 런레벨0 : 서버종료

    - 런레벨6 : 재시작

    - 런레벨1 : 싱글유저모드, 네트워크 사용안됨

    - 런레벨2,3 : 멀티유저모드

    - 런레벨4 : 리눅스에서 사용안함

    - 런레벨5 : 콘솔이 xwindows 모드

# who -r : 런레벨 확인

 

  2. 시간

가) 시스템 시간 확인 : # date

  1) 동기화서버시간확인 : # rdate -p time.bora.net

  2) 시간동기화 : rdate -s time.bora.net

  3) 시간설정 : # date mmddHHMM[yy]

나) 하드웨어 시간 확인 : # clock

다) 시간 적용

  1) 시스템시간을 고침(하드웨어시간을시스템시간에등록) : # clock -s

  2) 하드웨어시간을 고침 : # clock -w

 

  3. 서버 종료, 재부팅

가) 서버 종료

  1) # halt

  2) # shutdown -h +10[0, now, hh:mm]

  3) init 0

나) 서버 재부팅

  1) # reboot

  2) # shutdown -r +10[0, now, hh:mm]

  3) init 6

#shutdown -c : 원격에서 서버 종료 취소

 

  4. 쉘

가) 쉘의 종류

  1) csh(씨쉘)

  2) ksh(콘쉘) : 유닉스에서 많이 사용

  3) bash(배쉬쉘) : 리눅스에서 많이 사용, 명령어를 찾아서 실행 해줌

 

  5. 기타

가) 가상 콘솔, 터미널

  1) 가상콘솔모드

    - Ctrl + Alt + F1 ~ F6

    - xwindow : Ctrl + Alt + F7

    - CentOS 6.8에서 xwindow는 F1 임

    - /dev/ttyn 로 표시됨

  2) 터미널 모드

    - 원격 접속 모드

    - /dev/pts/n 으로 표시 됨

# tty : 모드 확인

  /dev/pts/0

  /dev/pts/1

  /dev/tty2

 

 

 

 

 

 

 

2016.11.09 - 2일차

 

  1. 명령서 설명서

가) man clock

  1) 검색 : /string + n(아래로검색), N(위로검색)

  2) 페이지 분류

    - Section 1 : 일반사용자명령

    - Section 8 : 관리자 명령

    - Section 2 : 시스템콜 (Kernel 함수)

    - Section 3 : 라이브러리 콜

    - Section 5 : File Formant

 

  2. 쉘변경

가) 명령어

# chsh + 암호

 

3. vi명령어

 

 

2016.11.10 - 3일차

 

1. 사용자 전환

2. 사용자 출력

3. 사용자 삭제

4. 그룹 정보 수정

5. 그룹 삭제

6. 계정 비밀번호 관리

 

 

 

 

2016.11.11 - 4일차

 

 

 

 

  * 명령어들

# who : 로그인 사용자 확인, 서버 차단, 재부팅시 확인 필요

# passwd : 관리자 패스워드 설정

# passwd user : user라는 계정의 패스워드 설정

# ps : 실행 중인 프로세스 확인

# whereis sh : sh명령어의 위치 확인

# whereis clock : clock명령의 위치 확인

# tty : 터미널 및 콘솔 확인

 

 

'-- STuDy -- > 리눅스' 카테고리의 다른 글

[리눅스] tcpdump  (0) 2016.02.16

[리눅스] tcpdump

Posted 2016. 2. 16. 13:46

참조

http://kensei.tistory.com/89

http://wnstjqdl.tistory.com/42

 

 

 

[]# tcpdump -i eth0 -w 20160216001.log

[]# tcpdump 'src 10.3.22.112 or dst 10.3.22.112' -c 1000

 

떨군 덤프파일이 깨지기도 함

putty에 모든 정보를 저장하게 설정하여 해당 로그만 추출하기도 함

 

 

 

 

 

 

TCPDUMP

- 기본적으로 서로 옵션이나 규칙을 조합하여 사용가능하다

-n : 주소를 십진수로 표시
-i : 어느 인터페이스를 경유하는 패킷을 캡쳐할지 결정 (eth0, eth1, eth2 ...)

-t : 캡쳐 시간을 출력하지 않음
-c : 캡쳐할 패킷 수 지정 (지정한 수 만큼 캡쳐하고 종료)
-a : 도메인 이름형식으로 주소 출력
-f : 로컬호스트는 도메인 이름, 원격호스트는 숫자로 표시
-e : 링크레벨 헤더를 출력
-N : 호스트 이름을 출력할때 도메인 출력하지 않음
-p :인터페이스를 promiscuous 모드로 하지 않음 ( 이모드로 하면 아마 브로드케스트 패킷이나 자기와 관련없는 패킷들은 생깔것같음 
-q(v): 프로토콜정보를 간단히 (자세히) 출력
-w(r) : 캡쳐한 패킷을 파일에 저장 (로드)
-s : snap length 를 변경 (기본 68바이트) : 무슨 소린지? ㅎㅎ
-S : TCP순서번호를 상대적인 번호가 아닌 절대적 값으로 출력
- v : 더 많은 정보들을 출력
-vv : -v 보다 더 많은 정보들을 출력
-x : 패킷을 헥사코드로 출력


조건식

and - or
host - net - port
src - dst
proto

tcpdump 'proto /ip' : ip데이터그램을 캡쳐
tcpdump 'arp' : ARP 패킷을 캡쳐
tcpdump 'tcp' : TCP 패킷을 캡쳐
tcpdump 'host yahoo.com' : 특정호스트가 송수신하는 패킷 캡쳐 (IP주소도 넣을수 있음)
tcpdump 'src host yahoo.com' : 특정송신자의 패킷만 캡쳐
tcpdump 'dst host yahoo.com' : 특정수신자의 패킷만 캡쳐
tcpdump 'port 23' : 송신지의 포트번호가 23인 패킷만 패킷만 캡쳐
tcpdump 'dst host A or dst host B' : 목적지가 A 혹은 B의 패킷 캡쳐
tcpdump 'not dst host A and src host B' : 목적지가 A가 아닌 발신지가 B인 패킷만 캡쳐

S : tcp 헤더의 SYN비트 (순서번호)
win : tcp 헤더의 Window Size
ack : tcp 헤더의 승인필드와 번호
DF : Don't Fragmentation (단편화 될수 없는 패킷??)

플래그
- S : SYN (Synchronize sequence numbers) 연결요청
- ACK : 패킷을 잘 받았다는 응답표시
- F : FIN (보낸쪽에서 연결을 종료) 정상적인 연결종료
- R : RST (비정상적으로 즉시 연결종료)
- P : PSH (데이터를 즉시 어플리케이션으로 전달)
- Usr : (긴급한 데이터에 우선순위를 높게 줌)
- . : (SYN, FIN, RESET, PUSH 가 아닌경우로 flag가 설정되지 않은 경우) : Placeholder

특정플래그만 캡쳐하기

SYN플래그의 패킷만 잡고 싶다?

C E U A P R S F
7 6 5 4 3 2 1 0
0 0 0 0 0 0 1 0

0*2 + 0*2 + 0*2 + 0*2 + 0*2 + 0*2 + 1*2 + 0*2 = 2 

TCP[13] == 2 

SYN-ACK 패킷만 잡고 싶다?

C E U A P R S F
7 6 5 4 3 2 1 0
0 0 0 1 0 0 1 0

0*2 + 0*2 + 0*2 + 1*2 + 0*2 + 0*2 + 1*2 + 0*2 = 18

1*2 의 4승 더하기 1*2의 1승 = 18

TCP[13] == 18 으로 나타내는게 아니라 무슨 소린지 모르겠지만

TCP[13] & 2 == 2

'-- STuDy -- > 리눅스' 카테고리의 다른 글

[멀티캠퍼스] 리눅스 초급 교육 1일차  (0) 2016.11.08