728x90
반응형

읽기 전에 블로그장의 한마디!

아래의 작업은 잘못했을 때 장비를 깡통으로 만들 수 있으므로, 반드시 유지보수 담당자의 조언하에 시행하는게 정신건강에 이롭습니다.



1. LDOM 패키지 설치 및 펌웨어 버전 확인

     
     1.1 ILOM에서 확인하는 방법
-> show /HOST

/HOST
    Targets:
        bootmode
        diag
        domain

    Properties:
        autorestart = reset
        autorunonerror = false
        bootfailrecovery = poweroff
        bootrestart = none
        boottimeout = 0
        hypervisor_version = Hypervisor 1.7.2.a 2009/05/05 19:32
        macaddress = 00:14:4f:c4:f1:44
        maxbootfail = 3
        obp_version = OBP 4.30.2.b 2009/06/16 07:02
        post_version = POST 4.30.2 2009/04/21 09:53
        send_break_action = (none)
        status = Solaris running
        sysfw_version = Sun System Firmware 7.2.2.e 2009/06/19 10:22

    Commands:
        cd
        set
        show

-> 


     1.2 OS에서 확인하는 방법
[t5120.:/]prtconf -vp | grep firmware-version
                 firmware-version:  '1.27.00.00'

[t5120.:/]prtdiag -v | grep -i firmware
Sun System Firmware 7.2.2.e 2009/06/19 10:22

[t5120.:/]prtdiag -v | grep -i obp
OBP 4.30.2.b 2009/06/16 07:02



2. firmware version update guide


     2.1 펌웨어 업데이트 전 사전 작업
1. WEB으로 접속하기 위해 netmgt에 IP가 박혀있는지 확인한다.

-> show /SP/network
/SP/network
    Targets:
    Properties:
        commitpending = (Cannot show property)
        dhcp_server_ip = none
        ipaddress = 192.168.0.150
        ipdiscovery = static
        ipgateway = 192.168.0.1
        ipnetmask = 255.255.255.0
        macaddress = 00:14:4F:C4:F1:4D
        pendingipaddress = 192.168.0.150
        pendingipdiscovery = static
        pendingipgateway = 192.168.0.1
        pendingipnetmask = 255.255.255.0
        state = enabled
    Commands:
        cd
        set
        show

2. web 서비스가 작동 중인지 확인한다.
-> show /SP/services/http
 /SP/services/http
    Targets:
    Properties:
        port = 80
        secureredirect = enabled
        servicestate = disabled
    Commands:
        cd
        set
        show

-> show /SP/services/https
 /SP/services/https
    Targets:
        ssl
    Properties:
        port = 443
        servicestate = enabled
    Commands:
        cd
        set
        show


     2.2 펌웨어 업데이트 실시
1. 최초 웹 접속간 화면
주소 : https://192.168.0.150/iPages/suntab.asp





2. 펌웨어 업데이트를 위해 maintenance 탭 선택



3. Enter Upgrade Mode 버튼 선택


현재 로그인한 사용자는 펌웨어가 업그레이드 될 때에 세션이 끊긴다는 메시지


4. 확인 버튼을 클릭하면 아래 내용이 출력된다
서비스 프로세서가 업그레이드 모드에 있습니다. 로드 할 펌웨어 이미지의 파일 이름을 지정하십시오.
'찾아보기'버튼을 클릭하면 펌웨어 이미지 파일을 선택할 수 있습니다.
당신이 그렇게하면 서비스 프로세서에 이미지 파일을 업로드 할 수있는 '업로드'버튼을 클릭합니다.



5. 펌웨어 업데이트를 위해 
    해당 장비에 맞는 firmware를 download 받고,  압축을 푼 다음 Sun_System_Firmware-7_4_6_c-PARC_Enterprise_T5120+T5220.pkg      
    파일을 업로드한다.





패치 진행 중....





업그레이드가 완료되었습니다.
부팅에 필요한 시간은 약 2분 가량이며, 매너저를 다시 접속 해야한다.







728x90
반응형
728x90
반응형
S/W License 등의 문제로 CPU Core를 Disabled 시켜야 할 때가 있다. 
다음 글은 SPARC 계열 중에 T계열 장비의 CPU Core를 제한하는 방법에 대해 알아 본다.


방법 1. ILOM에서 쓰레드 단위로 disabled 
    장점 : ILOM에 대한 이해(H/W -> S/W tier)하고 있다면, 가장 쉽게 할 수 있다.
    단점 : 경고등이 출력되어서 육안점검의 의미가 없다.

방법 2. LDom을 설치하여 primary domain에 cpu를 원하는 만큼 할당
           장점 : 경고등이 안뜨며, 깔끔하게 CPU Core를 줄이거나, 다시 복구 시킬 수 있다.
           단점 : LDom의 기본 개념을 알아야 하며, 서버에 패키지를 설치하여야 한다.


다음 문서는 방법1에 대해서만 기술하고 기회가 있을때 LDom(OVM : Oracle Virtual Machine)에 대해 기술하겠다.

 
1. CPU 보기 

 [T5220:/]prtdiag -v | more     ---> CPU, Memory 등 전반적인 hardware 확인
시스템 구성:  Sun Microsystems  sun4v SPARC Enterprise T5220
메모리 크기: 16512 MB
================================ 가상 CPU ================================
CPU ID Frequency Implementation         Status
------ --------- ---------------------- -------
0      1165 MHz  SUNW,UltraSPARC-T2     on-line 
1      1165 MHz  SUNW,UltraSPARC-T2     on-line 
2      1165 MHz  SUNW,UltraSPARC-T2     on-line 
3      1165 MHz  SUNW,UltraSPARC-T2     on-line 
4      1165 MHz  SUNW,UltraSPARC-T2     on-line 
5      1165 MHz  SUNW,UltraSPARC-T2     on-line 
6      1165 MHz  SUNW,UltraSPARC-T2     on-line 
7      1165 MHz  SUNW,UltraSPARC-T2     on-line 
8      1165 MHz  SUNW,UltraSPARC-T2     on-line 
9      1165 MHz  SUNW,UltraSPARC-T2     on-line 
10     1165 MHz  SUNW,UltraSPARC-T2     on-line 
11     1165 MHz  SUNW,UltraSPARC-T2     on-line 
12     1165 MHz  SUNW,UltraSPARC-T2     on-line 
13     1165 MHz  SUNW,UltraSPARC-T2     on-line 
14     1165 MHz  SUNW,UltraSPARC-T2     on-line 
15     1165 MHz  SUNW,UltraSPARC-T2     on-line 
16     1165 MHz  SUNW,UltraSPARC-T2     on-line 
17     1165 MHz  SUNW,UltraSPARC-T2     on-line 
18     1165 MHz  SUNW,UltraSPARC-T2     on-line 
19     1165 MHz  SUNW,UltraSPARC-T2     on-line 
20     1165 MHz  SUNW,UltraSPARC-T2     on-line 
21     1165 MHz  SUNW,UltraSPARC-T2     on-line 
22     1165 MHz  SUNW,UltraSPARC-T2     on-line 
23     1165 MHz  SUNW,UltraSPARC-T2     on-line  


[T5220:/]psrinfo -vp
물리적 프로세서에 24 가상 프로세서 있음(0-23)
  UltraSPARC-T2 (chipid 0, clock 1165 MHz)


만약 해당 시스템의 Core당 Threads 확인하고 자 할 때 아래의 shell 파일을 넣어서 실행한다. 
그러면 보다 자세히 알 수 있다.
[T5220:/]vi /showcpuinfo
#!/bin/bash

/usr/bin/kstat -m cpu_info | egrep "chip_id|core_id|module: cpu_info" > /var/tmp/cpu_info.log

nproc=`(grep chip_id /var/tmp/cpu_info.log | awk '{ print $2 }' | sort -u | wc -l | tr -d ' ')`
ncore=`(grep core_id /var/tmp/cpu_info.log | awk '{ print $2 }' | sort -u | wc -l | tr -d ' ')`
vproc=`(grep 'module: cpu_info' /var/tmp/cpu_info.log | awk '{ print $4 }' | sort -u | wc -l | tr -d ' ')`

nstrandspercore=$(($vproc/$ncore))
ncoresperproc=$(($ncore/$nproc))

speedinmhz=`(/usr/bin/kstat -m cpu_info | grep clock_MHz | awk '{ print $2 }' | sort -u)`
speedinghz=`echo "scale=2; $speedinmhz/1000" | bc`

echo "Total number of physical processors: $nproc"
echo "Number of virtual processors: $vproc"
echo "Total number of cores: $ncore"
echo "Number of cores per physical processor: $ncoresperproc"
echo "Number of hardware threads (strands or vCPUs) per core: $nstrandspercore"
echo "Processor speed: $speedinmhz MHz ($speedinghz GHz)"

# now derive the vcpu-to-core mapping based on above information #

echo -e "\n** Socket-Core-vCPU mapping **"
let linenum=2

for ((i = 1; i <= ${nproc}; ++i ))
do
        chipid=`sed -n ${linenum}p /var/tmp/cpu_info.log | awk '{ print $2 }'`
        echo -e "\nPhysical Processor $i (chip id: $chipid):"

        for ((j = 1; j <= ${ncoresperproc}; ++j ))
        do
                let linenum=($linenum + 1)
                coreid=`sed -n ${linenum}p /var/tmp/cpu_info.log | awk '{ print $2 }'`
                echo -e "\tCore $j (core id: $coreid):"

                let linenum=($linenum - 2)
                vcpustart=`sed -n ${linenum}p /var/tmp/cpu_info.log | awk '{ print $4 }'`

                let linenum=(3 * $nstrandspercore + $linenum - 3)
                vcpuend=`sed -n ${linenum}p /var/tmp/cpu_info.log | awk '{ print $4 }'`

                echo -e "\t\tvCPU ids: $vcpustart - $vcpuend"
                let linenum=($linenum + 4)
        done
done

rm /var/tmp/cpu_info.log




[T5120:/]/showcpuinfo
Total number of physical processors: 1                                     --> 물리적 CPU 갯 수
Number of virtual processors: 32                                              --> 총 쓰레드 갯 수(CPU * Core * Thread)
Total number of cores: 4                                                         --> 총 코어 갯 수
Number of cores per physical processor: 4                                --> 물리적 CPU 당 Core 갯 수
Number of hardware threads (strands or vCPUs) per core: 8      --> Core 당 Thread 갯 수
Processor speed: 1165 MHz (1.16 GHz)                                    --> CPU Clock 

** Socket-Core-vCPU mapping **

Physical Processor 1 (chip id: 0):
        Core 1 (core id: 516):
                vCPU ids: 0 - 7
        Core 2 (core id: 523):
                vCPU ids: 16 - 23
        Core 3 (core id: 530):
                vCPU ids: 24 - 31
        Core 4 (core id: 537):
                vCPU ids: 32 - 39



2. ILOM에서 CPU 죽이기
     ILOM에서는 CPU를 코어 단위가 아닌 쓰레드 단위로 disable 시킬 수 있다.
     가장 이상적인 방법은 쓰레드 단위로 disable 시키되 코어를 맞춰주는 것이다.


-> cd /SYS/MB/CMP0
해당 경로는 CPU 0번 슬롯에 꽃혀있는 phsical CPU를 의미한다. 해당 경로에서 show 명령을 치면 P{숫자}로 쓰레드 단위로 나오는데,
해당 위치에 가서 설정 값 component_state=disabled 해주면 해당 쓰레드는 안쓰게 된다. 그 외에 여기서에 CPU의 최고온도 최저온도 등의 설정 값도 확인할 수 있다.

-> cd /SYS/MB/CMP0
/SYS/MB/CMP0

-> show

/SYS/MB/CMP0
    Targets:
        NIU0
        NIU1
        PIU0
        MCU0
        MCU1
        MCU2
        MCU3
        L2_BANK0
        L2_BANK1
        L2_BANK2
        L2_BANK3
        L2_BANK4
        L2_BANK5
        L2_BANK6
        L2_BANK7
        BR0
        BR1
        BR2
        BR3
        CORE0
        CORE2
        CORE3
        CORE4
        P0
        P1
        P2
        P3
        P4
        P5
        P6
        P7
        P16
        P17
        P18
        P19
        P20
        P21
        P22
        P23
        P24
        P25
        P26
        P27
        P28
        P29
        P30
        P31
        P32
        P33
        P34
        P35
        P36
        P37
        P38
        P39
        T_TCORE
        T_BCORE

    Properties:
        type = Host Processor

    Commands:
        cd
        show




-> set /SYS/MB/CMP39 component_staate=disabled  

-> reset /SYS



ERROR: The following devices are disabled:
    MB/CMP0/P32
    MB/CMP0/P33
    MB/CMP0/P34
    MB/CMP0/P35
    MB/CMP0/P36
    MB/CMP0/P37
    MB/CMP0/P38
    MB/CMP0/P39

부팅 과정에 에러 메시지가 뜨면서 경고등이 들어온다.


728x90
반응형
728x90
반응형
해당 문서는 port scanning 기법에 대해 기초 지식이 있는 분들이 이해하기 쉽게 적혀있습니다. 
만약 port scanning 기법에 대해 알고 싶으시다면, 제 블로그 중에 적은 글을 방문해 주시면 감사감사 



주의!!
다음의 툴을 사용하여 공공기관, 민간업체 등을 공격할 시에는 범죄행위로 간주됩니다.
아래의 글은 DoS DDoS 기법 등을 교육하기 위해 작성된 글으므로, 교육의 목적에만 활용하시기 바랍니다.


읽기 전에 블로그장의 한 마디
DDoS에 개념을 이해하기 위해 wireshark 등과 같은 네트워크 흐름을 분석하는 툴과 함께 사용하시길 권장합니다.
제가 테스트한 이유는 Solaris10 Network setting이 default 일 때, 어느정도 트래픽을 넣어야 flooding attack 이라는 log message가 출력될까 라는
호기심 때문이였는데, 역시 서버는 서버군요... 테스트를 SunFire480 으로 했는데, 옛날 장비임에도 전혀 영향을 못끼치더라구요.. ㅠㅠ 
테스트는 없던걸로~~ ㅎㅎ 



사용한 Tool Download Link : 
nmap     : http://nmap.org/


본 문건은 하이에나 0.36v 으로 실습하였고, 간단한 사용법을 기술하였다.
처음 Win7용 하이에나를 실행 시킨 모습으로 하이에나는 Linux, MAC OS도 지원한다.



간단히 SYN Flooding 공격을 위해 아래처럼 설정한 모습.
-I  : Interface 번호, Network Interface의 정렬된 숫자를 의미

-a : 공격하는 패킷 타입 정의

-s : Source IP로 공격자 IP, 하이에나 툴에서는 %-% 을 통해 MAC 주소와 IP를 랜덤으로 변경하여 스푸핑 공격이 가능하다.

-d : destination IP로 희생자 IP(MAC-IP)

-f : 공격 방법(flag) TCP 패킷 플래그 중 각각 U A P R S F 중 urgent를 제외한 나머지가 있고, TCP가 아닌 UDP나 ARP는 옵션이 틀리다.

-t : TTL size

-e : ms 단위로 패킷을 보낸다. 즉 공격 속도

-u : 패킷을 보내는 지속 시간 ms 단위



728x90
반응형
728x90
반응형
Solaris 환경에서의 ndd 명령을 통한 TCP Parameter 값 변경에 대해 알아 본다.

TCP Parameter 값 변경은 커널 단을 만지기 때문에 잘못된 값을 입력할 경우 싱글모드에서 수정해야 될 수도 있으므로, 
파라메타의 정확한 의미와 적정한 값을 정의한다.



# ndd { -set  | -get } /dev/NIC_name { Parameter }
명령의미
-setParameter 값으로 설정하겠다.
-getParameter 값을 보겠다.
Parameter해당 파라메타를 정의한다.
\?  를 적으면 설정해서 변경할 수 있는 파라메타 전부를 출력한다.
즉 # ndd /dev/NIC_name \?
     # ndd /dev/ip \?
     # ndd /dev/tcp \?
     # ndd /dev/arp \?


Solaris 10 에서는 ndd 명령으로 파라메타를 보거나, 임시로 수정이 가능하다.
예전에는 /etc/system 파일에서 파라메타 수정을 많이 하였는데, 요즘은 스크립트로 /etc/rc2.d
디렉토리에 넣어서 부팅시 변경하게끔 한다.

solaris 10의 TCP_time_wait_interval의 default 값은 60000 이다.
# ndd -get /dev/tcp tcp_time_wait_interval

작업 수순
1. 스크립트 파일 생성 및 권한 변경
# touch /etc/rc2.d/S99networktuning
# chmod 744 /etc/rc2.d/S99networktuning

2. 심볼릭 링크로 사용자가 직접 재기동이 용이하게끔 생성
# ln -s /etc/rc2.d/S99networktuning etc/init.d/network_ndd

3. 파라메타 변경 내용 삽입
# echo "/usr/sbin/ndd -set /dev/tcp tcp_time_wait_interval 10000" > /etc/init.d/network_ndd

4. 쉘 스크립트를 이용해서 파라메타 변경 확인
# /etc/rc2.d/S99networktuning start
# ndd -get /dev/tcp tcp_time_wait_interval

5. 재부팅
재부팅 전에 쉘 스크립트가 정상적으로 작동하여 tcp_time_wait_interval이 60000 에서 10000으로 정상적으로 바뀐 것을
꼭 확인하여야 한다. /etc/rc2.d 디렉토리에 넣었으므로 만약 구문에 대한 오류가 있을 시 부팅이 되지 않는다.


728x90
반응형
728x90
반응형

안녕하세요 오늘 저녁 포스팅 입니다.


오늘 저녁은 편한 자리는 아니라 사진이 흔들린점 양해 바랍니다.


그럼 바로 갑니다!!



* 블로그장의 전체 총평 ( 2.5점 / 5점 )

간짜장과 쟁반짜장, 짬뽕 국물을 먹어봤는데 그냥 저냥 흔한 중국집 입니다.

하지만, 룸 형식으로 방이 7개? 정도 있고, 코스 요리도 정말 다양하게 있는 점은 좋습니다.


종합하여 블로그장의 총평은!! 2.5점 드립니다.


추천: 룸에서 조용히 중국요리 드시고 싶으신 분

       역삼역 근처에서 중국음식 드시고 싶으신분


비추천 : 간짜장 등을 달게 드시는 분(약간 간이 면에 덜 베어있는 느낌적인 느낌)


(주관적인 평가로 이에 대한 태클은 넣어둬~ )



1. 가게 위치 (서울 강남구 역삼동 736-38 지하1층)




2. 메뉴 (코스 요리는 제외하고, 보편적인 식사만 찍었습니다. 메뉴 정말 많습니다..ㅠㅠ)





3. 내부 전경 및 음식사진








728x90
반응형
728x90
반응형

DAS / NAS / SAN 은 서버와 스토리지 간의 연결 방식의 차이일 뿐 어려운 개념이 아닙니다.

단어를 처음 접하는 많은 분들이 어렵게 생각해서 어려운 것 같은데, 제 글을 한번 읽어보시면 맥이 잡히실 겁니다.



 





DAS(Direct Attched Storage)

- 서버와 Fibre 채널을 통해 스토리지에 직접 연결

  스토리지 상에 영역을 할당하여 가져가게되며, 각자의 파일 시스템을 관리 하게 됩니다.

  


DAS의 장단점

장점 : 직접 연결이 이루어져 있기 때문에 빠른 속도

         다수의 디스크가 여러개 존재하는 외장하드의 개념이라고도 볼 수 있습니다.

   SAN Switch 가 없으므로 구축, 유지보수 비용이 저렴하다.

단점 : 연결 할 수 있는 갯수의 제한이 존재.

        (당연하게 HBA 포트 제한이 있으므로 연결할 수 있는 장비의 제한이 있습니다. 

         만약 서버A와 스토리지A, 스토리지B, 스토리지C 를 연결할 때에는 HBA 포트 갯수에 영향을 받습니다.)

 

   

 

NAS 이란? (Network Attched Strorage)

- 네트워크를 통해 연결 되는 파일서버의 개념.

  전송매체에 따라 전송매체가 가지는 속도에 영향 받음 (Ethernet, iSCIS 등)

 

장점 : 파일서버 한 곳에서 정보관리를 수행 함으로써 관리의 편의성 제공

          다수의 서버들에 대한 공유가 가능함

          물리적인 위치가 같지 않더라도 연결 가능

단점 : 네트워크 회선 영향을 받아 속도 지연 현상 발생 가능성 큼

    

* 요즘에는 중간에 파일시스템 관리서버가 없고, NAS형 어플라이언스 장비가 나오고 있으며, 

  스토리지 벤더마다 틀리지만, Controller 만 oder 를 하면 SAN 장비에서 NAS 장비로도 교체 가능하다.


 

SAN 이란? (Storage Area Network)

-  DAS와 NAS의 단점을 보안하면서 만들어진 것이라 볼 수 있습니다.

- 서버당 접속 스토리지 수 제한 해결, 관리비용 절감 등의 이유로 전용 파이버채널 스위치를 둠으로써 빠른속도의 연결속도를 유지하는 것이 특징

 

장점 : 구성의 유연성, 확상성, 가용성

단점 : 전용 스위치 등이 필요함에 따른 비용추가. 
          공유 볼륨을 2개 이상의 서버에서 동시에 mount할 경우 데이터가 깨짐

 

 

 

 

스토리지의 사용 목적은 대용량 데이터를 저장하기 위함이며, 분산되지 않고 한 곳에서 관리 되어지기 때문에 관리의 용이함을 들 수 있습니다. 

 


728x90
반응형
728x90
반응형
Solaris 10 사용자 로그인 환경설정에 대해

환경설정 파일 :
# /etc/default/login 
  
line
내용
의미
8
TIMEZONE=EST5EDT
지역 시간대 정의
13
#ULIMIT=0
파일 크기의 제한 블록 값으로 표현된 숫자를 이용하여 로그인된 사용자가 이용할 수 있는 최대 파일 크기 정의 0이면 크기를 제한하지 않는다.
18
CONSOLE=/dev/console
root 사용자가 로그인할 때 콘솔을 지정된 디바이스로 제한한다. 기본적으로 root는 가상터미널에서 로그인은 허용하지 않는다.
22
PASSREQ=YES
로그인시에 사용자 패스워드를 요구할지를 정의, NO로 설정하면 패스워드 입력 없이 로그인 가능
26
ALTSHELL=YES
로그인 후 사용자별 환경설정을 할지를 정의
30
#PATH=/usr/bin
다른 Shell 환경설정 파일에 영향 없이 기본적으로 적용시킬 path 값
34
#SUPATH=/usr/sbin:/usr/bin
다른 Shell 환경설정 파일에 영향 없이 기본적으로 적용시킬 root 사용자의 path 값
36
#TIMEOUT=300
로그인 후 아무 작업도 하지 않았을 경우 접속종료되는 시간(단위 초)
43
#UMASK=022
로그인 서비스가 기본적으로 설정하는 umask 값을 정의
49
SYSLOG=YES
syslogd를 이용하여 사용자 접근의 기록을 남길 것인지를 정의
-
DISABLETIME=20
RETIRIES=5
로그인에 실패한 경우 몇 번까지 로그인에 재시도하게 할 것인지 지정, 5회 지정시 5회 모두 실패하면 DISABLETIME 값에 의해 20초 후 TCP 연결이 해제된다.
-
SYSLOG_FAILED_LOGINS=5
접속 실패시 syslog에 실패정보를 기록할 것인지를 정의 기본 값은 5회로 5회 실패시 로그가 남는다.

  


728x90
반응형
728x90
반응형
주의!!
다음의 툴을 사용하여 공공기관, 민간업체 등을 공격할 시에는 범죄행위로 간주됩니다.
아래의 글은 ICMP 및 Port Scanning 기법 등을 교육하기 위해 작성된 글으므로, 교육의 목적에만 활용하시기 바랍니다.


읽기 전에 블로그장의 한 마디
아마 처음보시는 분들은 이게 뭐야?? 라고 하실 수 있습니다. (워낙 글 주변이 없어서..) 
본 문서는 back track5 버전대에서 테스트에 사용하였고, 요즘엔 칼리 리눅스로 이름이 변경되었습니다.
해킹 및 보안에 관심있는 분들은 다운 받아서 "교육 목적" 으로 사용하시면 좋을것 같습니다.

그리고 테스트 환경에 대해서 말씀드리면,
back track5, CentOS5, wire shark(네트워크 스누핑용) 사용하여 테스트 하였습니다.

kali linux download : https://www.kali.org/downloads/
centos download : https://www.centos.org/download/
nmap download : https://nmap.org/download.html
wireshark download : https://www.wireshark.org/download.html

nmap 툴을 이용한 TCP Port Scanning
Ⓐ Port Scanning 기법 종류
Scanning 기법
의미
Open Scan
3Way handshake를 이용하여 완전히 연결을 수립한 상태에서 Scan하는 기법으로 종류에는 TCP Scan이 있다. 이는 호스트가 보내오는 신호에 따라 열린포트, 닫힌포트를 구분하는 방법, 단점으로 연결이 수립되어서 타겟 호스트에 로그가 남을 수 있다.
Half Scan
3Way handshake를 수립하지 않는 방법으로 종류에는 SYN Scan이 있다.
Stealth Scan
SYN 신호 자체를 전달하지 않는 방법으로 종류에는 FIN Scan, NULL Scan, Xmas Scan, ACK Scan이 있다.


Ⓑ nmap 툴을 이용하여 target IP에 열려있는 port와 실행 중인 서비스를 파악할 수 있다.
# nmap -option tagetIP 
옵션
의미
-s
T
Signal을 TCP Scan으로 보낸다.
S
Signal을 SYN Scan으로 보낸다.
F
Signal을 FIN Scan으로 보낸다.
N
Signal을 NULL Scan으로 보낸다.
X
Signal을 XMAS Scan으로 보낸다.
A
Signal을 ACK Scan으로 보낸다.
-P0
Scan 하기 전 ping test를 보내 해당 호스트와 연결이 되는지 확인하는데,
0으로 되어있으면 해당 작업을 하지 않는다.
-p port num
port number로 명시한 특정 포트만 Scanning 한다.
-T num
number가 0~5번까지 정의 가능한다. Scanning 속도를 조정한다.


Victim : CentOS 5.9 /   IP : 172.20.10.4
 Attacker : BTR3 /   IP : 172.20.10.6
Ⓐ TCP Scanning
graphic

closed된 21번 FTP port에 대해서 victim 측에서 RST, ACK 신호를 보낸다.
graphic

반면 open 되어 있는 23번 telnet port에 대해서는 attacker와 victim이 3 Way Handshake를 한다.
graphic



Ⓑ SYN Scanning
graphic

closed 된 20번 포트는 victim에서 RST 신호를 attacker로 보낸다.
graphic

open 된 22번 포트는 victim에서 SYN, ACK로 응답을 보내오면 attacker에서 RST 신호를 보내 3 Way handshake 연결을 수립하지 않는다.
graphic



Ⓒ FIN Scanning
graphic

FIN Scanning의 특징으로 Flags를 살펴보면 처음부터 FIN신호를 보내게된다.
graphic

open 되어있는 23번 telnet 포트는 attacker가 FIN 신호를 보내면 victim은 어떠한 반응도 보이지 않는다.
하지만, closed되어 있는 53번 domain 포트는 attacker가 FIN 신호를 보내자 victim은 RST, ACK 신호를 돌려주었다. 이를 통해 닫힌 포트와 열린 포트를 구분할 수 있다.
graphic


Ⓓ NULL Scanning
graphic

NULL Scanning의 특징은 Flags 부분이 모두 0으로 되어 있다는 것이다.
graphic

open 되어 있는 23번 telnet 포트에 대해서는 victim은 attacker에게 아무런 응답을 하지 않는다.
이를 보고 open되어 있다는 것을 판단할 수 있다.
graphic

close 되어 있는 21번 ftp 포트에 대해서는 victim은 RST, ACK 신호를 attacker에게 보낸다.
graphic





Ⓔ XMAS Scanning
graphic

XMAS Scanning의 특징으로 URG, PSH, FIN Flags를 같이 보낸다.
graphic

open되어 있는 25번 SMTP 포트는 attacker가 URG, PSH, FIN 신호를 보내면 victim은 아무런 반응을 하지 않는다.
graphic

close 되어 있는 110번 POP3 포트는 attacker로부터 URG, PSH, FIN 신호를 받으면 victim은 RST, ACK 신호를 보내 포트가 닫혀있다는 것을 알려준다.
graphic




Ⓕ ACK Scanning
1. 방화벽 미설정 시
graphic

2. 방화벽 설정시
graphic

ACK Scanning의 특징은 attacker에서 ACK 신호를 해당 포트로 날려 방화벽의 유무를 확인한다는 점이다.
graphic



1. 방화벽 미설정시에는 attacker가 보내온 신호에 대해 RST 신호로 응답을 해주었다.
graphic

2. 방화벽 설정시에는 attacker가 보내온 신호에 대해 ICMP 프로토콜을 이용해서 Destination unreachable로 응답하고 있다.
graphic

ACK Scanning 을 통해 방화벽 유무를 확인할 수 있다.


728x90
반응형
728x90
반응형


리눅스 시스템의 로그 데몬은 syslogd 가 생성하고, syslogd에 대한 설정파일은 /etc/syslog.conf 에 기록되어 있다.



graphic

/etc/syslog.conf 의 기본 설정 내용이다.
‘#’으로 되어 있는 것들은 주석 처리가 되어있는 것들이고, 그 외에 설정된 것 중에
13번째 라인에 mail.* -/var/logmaillog를 보면 .(dot)을 기준으로 왼쪽은 로그기록 대상,
오른쪽은 위험도를 뜻하게 되고, -/var/logmaillog 는 로그파일이 기록되는 디렉토리를 의미한다.
  
위험도
위험번호
의미
emerg
0
예를 들어 cron.err로 정의되어 있으면 위험도인 err는 3번이므로 3번보다 위험도가 높은 0~2번까지의 모든 행위에 대해 로그를 남기겠다는 의미가 되겠다.
alert
1
crit
2
err
3
warning
4
notice
5
info
6
debug
7
none
8
로그를 남기지 않겠다.


※ 리눅스 6.x ver 부터는 syslog가 없고 rsyslog를 지원한다. r 은 remote를 의미하고 네트워크를 타고 다른 호스트에도 로그를 남기는 기능을 지원한다.


로그 정리툴
/etc/logrotate.conf
logrotate 툴의 설정파일임


728x90
반응형
728x90
반응형


유닉스 dump backup 명령

백업의 종류
Full Backup : 풀 백업
Incremental Backup : 증분 백업

유닉스, 리눅스 dump backup 레벨에는 0~9번까지 있고, 0번은 full backup을 뜻하고, 1~9번까지는 증분 백업으로 쓴다. 
각각의 dump에 백업번호를 부여하고, 백업 시에 참고하여 이전 백업 레벨부터 백업할 것인지, 전체를 백업할 것인지를 결정하게 된다.

예를 들어
요일
레벨
0
3
4
5
6
7
2

일요일에 풀백업을 하고, 월요일부터 증분백업을 한 다음, 토요일날 일요일 백업 시점부터 주간 백업을 실시한다. 
이 처럼 백업레벨에 따라 다양한 백업내용을 정의할 수 있다.


백업 명령
# ufsdump 백업레벨(0~9)uf 덤프이름 백업대상 ⤶

u 옵션 : /etc/dumpdates 파일에 해당 덤프파일을 생성한 작업에 대한 내용을 기록하는 명령 /etc/dumpdates 파일에는 백업했던 대상, 백업레벨, 백업시간이 명시되어 있다.
f 옵션 : file 이름을 정의한다는 옵션


복구 명령
# 복구 전 해당 복구할 위치로 이동
#ufsrestore rvf 덤프파일경로               : 지금위치에 전부 restore
#ufsrestore xvf 덤프파일경로 파일명       : 지금위치에 파일명 file 만 뽑아서 restore
#ufsrestore tvf 덤프파일경로                : 내용 보기
#ufsrestore ivf 덤프파일경로                : interactive방식으로 확인하고 복구

※ Tip : 백업 복구 시에는 전체 복구(레벨0)부터 한 다음에 증분 백업을 실시하여야 한다.







리눅스 dump backup 명령

백업의 종류
Full Backup : 풀 백업
Incremental Backup : 증분 백업

유닉스, 리눅스 dump backup 레벨에는 0~9번까지 있고, 0번은 full backup을 뜻하고, 1~9번까지는 증분 백업으로 쓴다. 
각각의 dump에 백업번호를 부여하고, 백업 시에 참고하여 이전 백업 레벨부터 백업할 것인지, 전체를 백업할 것인지를 결정하게 된다.

예를 들어
요일
레벨
0
3
4
5
6
7
2

일요일에 풀 백업을 하고, 월요일부터 증분백업을 한 다음, 토요일날 일요일 백업 시점부터 주간 백업을 실시한다. 
이 처럼 백업레벨에 따라 다양한 백업내용을 정의할 수 있다.


백업 명령
# dump 백업레벨(0~9)uf 덤프이름 백업대상 ⤶

u 옵션 : /etc/dumpdates 파일에 해당 덤프파일을 생성한 작업에 대한 내용을 기록하는 명령 /etc/dumpdates 파일에는 백업했던 대상, 백업레벨, 백업시간이 명시되어 있다.
f 옵션 : file 이름을 정의한다는 옵션


복구 명령
# 복구전 해당 복구할 위치로 이동
#restore rvf 덤프파일경로                  : 지금위치에 전부 restore
#restore xvf 덤프파일경로 파일명          : 지금위치에 파일명 file 만 뽑아서 restore
#restore tvf 덤프파일경로                   : 내용 보기
#restore ivf 덤프파일경로                   : interactive방식으로 확인하고 복구


※ Tip : 백업 복구 시에는 전체 복구(레벨0)부터 한 다음에 증분 백업을 실시하여야 한다.


728x90
반응형

+ Recent posts