검색 엔진의 방문이 늘어나고 있군...

Posted
Filed under 프로그램과 명령어/네트워크와 보안
참조 원문 : 8 Linux Commands: To Find Out Wireless Network Speed, Signal Strength And Other Information

1. 무선 카드 칩셋 정보 알아내기
$ lspci
$ lspci | grep -i wireless
$ lspci | egrep -i --color 'wifi|wlan|wireless'
출력 예:
0c:00.0 Network controller: Intel Corporation Ultimate N WiFi Link 5300
  위 출력 결과 중 0c:00.0에 해당하는 부분은 아래에서 쓰인다.


2. 무선 카드 드라이버 정보 알아내기
lspci -vv -s 0c:00.0
출력 예:
0c:00.0 Network controller: Intel Corporation Ultimate N WiFi Link 5300
    Subsystem: Intel Corporation Device 1121
    Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR+ FastB2B- DisINTx-
    Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- SERR-
    Kernel driver in use: iwlwifi


3. 무선 네트워크 인터페이스 설정
  iwconfig 명령어는 무선 인터페이스에 대해 ifconfig 명령어와 유사한 명령어로 ssid, mode, channel, bit rate, encryption key, power 등의 기본 무선 파라미터를 조작할 수 있다. wlan0 무선 인터페이스에 대한 정보를 출력하려면 아래처럼 입력한다.
iwconfig Interface-Name-Here
iwconfig wlan0
출력 예:
wlan0     IEEE 802.11abgn  ESSID:"nixcraft5g"
          Mode:Managed  Frequency:5.18 GHz  Access Point: 74:44:44:44:57:FC
          Bit Rate=6 Mb/s   Tx-Power=15 dBm
          Retry  long limit:7   RTS thr:off   Fragment thr:off
          Encryption key:off
          Power Management:off
          Link Quality=41/70  Signal level=-69 dBm
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:28   Missed beacon:0


4. 연결 품질을 화면에 계속 표시하기
watch -n 1 cat /proc/net/wireless


5. wavemon
  wavemon은 ncurses 기반의 무선 네트워크 장치 모니터링 프로그램이다. 지속적으로 신호 레벨, 일반 네트워크 정보, 무선 전용 정보를 갱신해서 표시한다. 커널 2.4 이상에 포함된 무선 확장에 의해 지원되는 장치들을 모니터링 할 수 있다. 프로그램 이름과 같은 명령어로 실행할 수 있다.(별도 설치 필요)


6. wicd
  wicd는 Wireless Interface Connection Daemon의 약자로 유무선 네트워크를 관리하기 위한 오픈 소스 소프트웨어 유틸리티다.


7. iwevent
  RTNetlink 소켓을 통해 받는 무선 이벤트를 출력한다. 각 줄마다 무선 이벤트가 발생한 인터페이스와 그 내용을 출력한다.
Waiting for Wireless Events from interfaces...
07:11:57.124553   wlan0    Set Mode:Managed
07:11:57.124621   wlan0    Set ESSID:off/any
07:12:00.391527   wlan0    Scan request completed
07:12:10.428741   wlan0    Scan request completed
07:12:10.432618   wlan0    Set Mode:Managed
07:12:10.432642   wlan0    Set ESSID:off/any
07:12:10.432651   wlan0    Set Frequency:5.18 GHz (Channel 36)
07:12:10.432722   wlan0    Set ESSID:"nixcraft5g"
07:12:10.647943   wlan0    Association Response IEs:01088C129824B048606C2D1A7E081BFFFFFF00010000000000C20101000000000000000000003D16240D0000000000000000000000000000000000000000DD0
07:12:10.648019   wlan0    New Access Point/Cell address:74:44:44:44:57:FC
07:12:22.310182   wlan0    Scan request completed


8. iwgetid
  ESSID, NWID, AP/Cell 주소를 보고받는다. 스크립트에 사용하기 좋다.
wlan0     ESSID:"nixcraft5g"


9. iwlist
  무선 인터페이스의 무선 정보를 자세히 출력한다. 아래는 일반적인 사용법이다.
Usage: iwlist [interface] scanning [essid NNN] [last]
              [interface] frequency
              [interface] channel
              [interface] bitrate
              [interface] rate
              [interface] encryption
              [interface] keys
              [interface] power
              [interface] txpower
              [interface] retry
              [interface] ap
              [interface] accesspoints
              [interface] peers
              [interface] event
              [interface] auth
              [interface] wpakeys
              [interface] genie
              [interface] modulation


2013/07/03 14:36 2013/07/03 14:36
Posted
Filed under 프로그램과 명령어/네트워크와 보안
참조 원문 : Nmap Network Probing Cheatsheet

  Nmap은 강력한 네트워크 스캐닝 도구로서 사용중/비사용중인 IP, 호스트네임, 서비스, OS와 버전 등의 정보를 제공하여 같은 네트워크 내에 있는 불안전하거나 승인되지 않은 서버를 탐색하는데 도움이 됩니다.

  Nmap은 리눅스에서만 쓸 수 있다고 오해받는 경우가 있는데 각종 유닉스는 물론이고 윈도우에서도 사용할 수 있습니다. 윈도우용은 홈페이지에서 인스톨러 형태로 받을 수 있습니다.

  첫 번째 사용 예로 특정 네트워크 범위 내에서 살아있는 모든 호스트를 찾아내는 명령어는 아래와 같습니다.
$ nmap -sn 192.168.1.0/24
  호스트네임을 볼 필요가 없다면 DNS lookup을 비활성화하는 -n 옵션을 넣어 속도를 더 빠르게 할 수 있습니다.

  -sL 옵션을 사용하면 지정한 범위 내의 모든 주소를 나열합니다. 특이한 건 네트워크 호스트들에 어떠한 패킷도 보내지 않는다는 건데 그럼 호스트가 살았는지 죽었는지 알 수가 없겠죠? 그렇다고 진짜로 나열만 하느냐 하면 당연히 그건 아니고 reverse DNS lookup을 실시합니다. 그러므로 DNS 설정이 정확한지 확인할 때 유용히 쓸 수 있습니다. grep으로 '(' 문자를 검출하여 빈 주소를 빼서 reverse DNS record가 있는 주소만 출력할 수 있습니다.
$ nmap -sL 192.168.1.0/24 | grep '('
  지정한 범위 내의 IP 중 안 쓰이는 IP만 찾아 텍스트 파일에 저장하는 예는 아래와 같습니다. 결과 중 IP만 뽑아서 저장합니다.
$ nmap -v -sn 192.168.1.0/24 | grep down | awk '{print $5}' > filename.txt
  반대로 사용 중인 IP(덤으로 중복 사용도 확인 가능)만 출력하는 예는 아래와 같습니다. 결과 중 IP만 뽑아서 출력합니다.
$ nmap -sn 192.168.1.0/24 |grep -o '192.168.1.*' | sed 's/[ \)]*$//'

포트와 OS 감지
  동일 네트워크 안에 있는 호스트들의 OS, 돌아가는 서비스와 버전을 조사하는 예는 아래와 같습니다. 특히 버전은 보안과 직접적으로 연결되기 때문에 큰 가치가 있습니다.
$ nmap -A 192.168.1.0/24
  -oA 옵션을 통해 결과를 파일로 저장할 수도 있습니다. 지정한 파일명에 확장자가 gnmap, nmap, xml인 파일이 생기는데 gnmap은 grep에 사용하기 쉽게 만들어진 파일, nmap 파일은 출력 결과를 그대로 저장한 파일, xml은 이름대로 XML 형식으로 저장한 파일입니다. 보너스로 -oS 옵션을 쓰면 대소문자, 숫자, 특수문자를 섞어서 장난스럽게 출력할 수 있습니다.(스크립트 키디 출력이라고 합니다.)
$ nmap -A -oA filename 192.168.1.0/24
  특정 포트들이 열렸는지만 검사하려면 아래처럼 -p 옵션을 사용합니다. 만약 TCP 포트만 검사하려면 p 뒤에 T를, UDP 포트만 검사하려면 p 뒤에 U를 추가로 붙입니다.
$ nmap -p T:80,443,8080 192.168.1.0/24
  전체 결과 중 서비스와 버전만 확인하려면 -sV 옵션을 사용합니다.
$ nmap -sV 192.168.1.0/24
  다른 옵션에 -v나 -vv 옵션을 추가하면 출력 결과가 더 자세하게 나옵니다. 단, 출력 형태가 변하기 때문에 결과를 awk나 sed 같은 명령어로 필터링을 할 경우 이를 고려해야 합니다.

Target Specification
  Nmap 문서에서는 조사하는 IP나 호스트명을 target specification이라고 부릅니다. 지금까지 위의 예제들에서 했던 target specification은 전부 CIDR 표기를 이용한 하나의 사설 서브넷이었습니다. 그 외에도 단일 IP나 호스트명을 지정할 수도 있고 다수의 호스트명을 공백 문자, 탭 문자, 대상이 한 줄에 하나씩 있는 파일로 지정할 수 있습니다. 아래는 공백 문자로 다수의 호스트를 대상으로 지정하는 모습입니다.
$ nmap -A server1 server2 server3
  -iL 옵션으로 대상 호스트가 각 줄마다 하나씩 적힌 파일을 읽을 수도 있습니다. 반대로 이 옵션 대신 --excludefile 옵션을 사용하면 파일 안에 있는 호스트들을 스캔에서 제외합니다.
$ nmap -A -iL hostname-list-file
  IP 주소를 지정할 때 192.168.1.15-101처럼 연속된 범위를 지정할 수도 있고 192.168.1.41,77,103처럼 비연속 형태로 지정할 수도 있습니다.
2013/06/25 17:25 2013/06/25 17:25
Posted
Filed under 프로그램과 명령어/네트워크와 보안
참조 원문 : 6 of the Best Free Linux Digital Forensics Tools

  6가지 포렌식 툴을 소개하는 원문을 납치했습니다. 원문에 있는 간략한 소개만 하겠습니다. 절대 귀찮아서 그런거 아닙니다! -_-
2011/01/18 18:41 2011/01/18 18:41
Posted
Filed under 프로그램과 명령어/네트워크와 보안
참조 원문 : Zenmap Tutorial: Audit Your Networks using Nmap GUI

  네트워크가 커지면 시스템이 죽었는지 살았는지, OS는 뭔지, 어떤 포트가 열렸는지 하나하나 조사하는 것도 고역입니다. 이럴 때 Zenmap을 이용하면 일을 쉽게 할 수 있습니다. Zenmap은 유명한 네트워크 보안 및 조사 툴인 Nmap의 그래픽 프론트 엔드 툴입니다. 즉, Nmap을 사용하기 쉽고 보기 좋게 만든 그래픽 버전인 셈이죠. 분명히 Nmap은 강력한 툴이지만 결과를 보기에는 그리 좋지 않기 때문에 사용하기도 편하고 상호작용이 가능한 네트워크 지도도 만들어주는 Zenmap이 더 빛을 발합니다.


설치
  간단히 자신의 배포판에 맞는 패키지 매니저 창을 띄워서 Zenmap의 체크 박스를 체크해서 설치하면 됩니다. 참고로 Zenmap의 Nmap의 프론트 엔드 프로그램이기 때문에 미리 Nmap이 설치되어 있어야 합니다.

  설치가 끝나면 Applications -> Network에서 찾을 수 있습니다. 그런데 Nmap을 자유롭게 사용하려면 관리자 권한을 필요로 하므로 Zenmap을 실행할 때 다음과 같이 실행합니다.
$ sudo zenmap

사용법
  일단 조사 대상의 IP를 Target에 적습니다. 한 네트워크 전체를 대상으로 할 때는 192.168.1.* 같이 적으면 됩니다.

  다음으로 미리 정의된 프로파일 중 하나를 선택합니다. 프로파일에는 단순한 핑 스캔부터 치밀한 스캔까지 다양하게 있지만 강도가 높을수록 네트워크에 문제가 발생할 가능성이 높습니다. 특히 저가의 스위치나 라우터를 사용할 경우 더 위험하니 주의해야 합니다. 프로파일을 선택하면 그에 해당하는 내용의 Nmap 명령어가 Command 섹션에 나타납니다. 실제 Nmap 명령어이기 때문에 그대로 쉘에 가져다 써도 같은 결과를 얻을 수 있습니다.

  프로파일을 선택한 후 스캔 버튼을 클릭하면 왼쪽 창에 발견된 주소들이 나오기 시작하고 스캔 결과가 오른쪽 창에 나타납니다. 오른쪽 창에는 아래와 같은 탭들이 있습니다.
  • Nmap Output: 디폴트 탭이며 명령어의 결과를 보여준다.
  • Ports/Hosts: 특정 호스트에 어떤 포트가 열려 있는지 보여준다.
  • Topology: 네트워크의 토폴로지를 그래픽으로 보여준다.
  • Host Details: 왼쪽에서 선택한 호스트에 대한 정보를 보여준다.
  • Scans: 이전에 실행했던 스캔 내역을 보여준다. 원하는 걸 선택해서 다시 실행할 수 있다.

토폴로지

생성된 그래픽 토폴로지

  처음 토폴로지 탭에 오면 점들과 IP가 보입니다. 규모가 크면 잘 안 보이기 때문에 Zoom으로 확대를 한 후 Ring Gap 슬라이더를 늘려 보기 좋게 만듭니다. 오른쪽에서 View 섹션의 '+'를 누르면 보여주는 정보를 더하거나 뺄 수 있습니다.

  이 지도는 상호작용이 가능하기 때문에 특정 호스트를 선택해서 원하는 위치에 옮길 수 있습니다. 화면의 위치는 네비게이션 섹션에 있는 바깥 점을 집어 이동시킴으로써 외곽선을 따라 이동할 수 있습니다.

  Host Details 탭을 가지고 않고 토폴로지 탭에서 특정 호스트에 대해 더 많은 정보를 얻고 싶다면 마우스 오른쪽 버튼을 눌러 스캔을 통해 얻은 정보들을 자세히 볼 수 있습니다. 물론 많은 정보를 얻으려면 강도 높은 스캔이 필요합니다.

스캔 프로파일
  기본으로 존재하는 프로파일을 사용할 수도 있지만 별도의 프로파일을 직접 만들 수도 있습니다. 메뉴에서 Profile의 하위 메뉴를 통해 새로운 프로파일을 만들거나 현재 선택하고 있는 프로파일을 수정할 수 있습니다. 예를 들어 현재 프로파일에서 OS 정보를 추가로 얻고 싶다면 Profile -> Edit Current Profile 메뉴를 선택해 Profile Editor 창을 연 후 Scan 탭에서 'Operating system detection (-O)'를 선택하고 저장하면 됩니다.

2010/12/10 16:40 2010/12/10 16:40
Posted
Filed under 프로그램과 명령어/네트워크와 보안
참조 원문 : How to change network card speed and duplex settings in ubuntu

  NIC의 속도와 듀플렉스를 바꾸려면 ethtool이나 mii-tool을 사용해야 합니다. ethtool을 사용하면 다양한 네트워크 디바이스(특히 이더넷 디바이스)에 대해 속도, 자동 협상, 체크섬 오프로드 설정을 변경할 수 있습니다. 우분투에서 mii-tool을 사용하려면 net-tools 패키지를 설치해야 합니다. 이 패키지에는 리눅스 커널의 네트워크 서브시스템을 제어하기 위한 중요한 툴들이 있습니다. 여기에는 ifconfig, netstat, rarp, nameif, route 같은 툴, 특정한 네트워크 하드웨어 종류와 관련된 유틸리티(plipconfig, slattach, mii-tool), IP 설정과 관련된 고급 툴(iptunnel, ipmaddr)이 포함됩니다.


  먼저 필요한 패키지 설치를 설치합니다.
$ sudo apt-get install ethtool net-tools
  현존하는 네트워크 카드의 속도를 확인하기 위해 아래의 명령어를 사용합니다.
$ sudo ethtool eth0
  아래는 ethtool을 통해 eth0의 속도를 차례대로 10, 100, 1000으로 변경하는 명령어입니다.
$ sudo ethtool -s eth0 autoneg off speed 10 duplex half
$ sudo ethtool -s eth0 autoneg off speed 100 duplex full
$ sudo ethtool -s eth0 autoneg off speed 1000 duplex full
  변경사항을 영구적으로 적용하려면 /etc/network/interfaces 파일에 아래의 내용을 추가합니다.
$ pre-up /usr/sbin/ethtool -s $IFACE autoneg off 100 duplex full
  이제 네트워킹 서비스를 다시 시작합니다.
$ sudo networking restart
2010/12/10 11:41 2010/12/10 11:41
Posted
Filed under 프로그램과 명령어/네트워크와 보안
참조 원문 : Linux Network IP Accounting
관련 문서 : IptablesHowTo

  네트워크에서 IP 어카운팅(Accounting)이란 네트워크 트래픽을 모니터링하는 것을 뜻합니다. 대략 아래와 같은 것이 IP 어카운팅이라고 할 수 있습니다.
  • eth0 인터넷 링크의 데이터 전송량 확인.
  • 특정 IP 주소를 통한 데이터 전송량 확인.
  • 아파치 버추얼 도메인별 데이터 전송량 확인.
  • 서비스 포트(HTTP, SMTP 등)와 프로토콜(TCP, UDP, ICMP)별 데이터 전송량 확인.
  이러한 기능은 별도의 프로그램을 사용하지 않고도 리눅스의 기본 방화벽 프로그램인 iptables를 통해 구현이 가능합니다.(물론 사용하기에 그리 편하진 않지만...) 생각해보면 방화벽은 네트워크 트래픽을 모두 검사하기 때문에 이런 기능을 갖고 있기에 안성맞춤이라 할 수 있습니다.

  iptables에는 다수의 체인이 있고 체인은 다시 기본 체인과 유저가 정의할 수 있는 체인으로 나눠지는데 이 글에서는 INET_IN과 INET_OUT이라는 별도의 체인을 정의하여 사용합니다.

  먼저 현재 iptables의 테이블과 체인을 보기 위해 아래의 명령어를 사용합니다.
$ sudo iptables -L -n
Chain INPUT (policy ACCEPT)
target     prot opt source               destination        

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination        

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination        
  -L 옵션은 내용을 출력하는 옵션이고 -n은 DNS 조회를 방지하는 옵션입니다. 만약 -n 옵션이 없으면 체인에 있는 각 IP마다 도메인 조회를 하기 때문에 경우에 따라서 출력에 상당한 시간이 소요됩니다.

  이제 여기에 -v 옵션을 추가하면 유용한 정보가 속속들이 나오기 시작합니다.
$ sudo iptables -L -n -v
Chain INPUT (policy ACCEPT 1635K packets, 320M bytes)
 pkts bytes target     prot opt in    out    source   destination        

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in    out    source   destination        

Chain OUTPUT (policy ACCEPT 1756K packets, 473M bytes)
 pkts bytes target     prot opt in    out    source   destination 
  위에서 눈여겨봐야 할 것은 체인을 거친 총 패킷 및 바이트와 체인 내에 있는 각 엔트리별 패킷 및 바이트 칼럼입니다. 이후 아래에서 설명하는 방법으로 체인을 설정하고 위의 값을 보면 원하는 자료를 얻을 수 있습니다.


IP 어카운팅 설정 방법
  아래의 명령어로 IP 어카운팅에 사용할 사용자 정의 체인을 만듭니다. INET_OUT이라는 이름의 체인은 바깥으로 나가는 트래픽의 양을 저장, INET_IN이란는 이름의 체인은 바깥에서 들어오는 트래픽의 양을 저장하기 위해 쓸 예정입니다.
$ sudo iptables -N INET_OUT
$ sudo iptables -N INET_IN
$ sudo iptables -v -n -L
Chain INPUT (policy ACCEPT 1645K packets, 321M bytes)
 pkts bytes target     prot opt in    out    source    destination        

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in    out    source    destination        

Chain OUTPUT (policy ACCEPT 1765K packets, 477M bytes)
 pkts bytes target     prot opt in    out    source    destination        

Chain INET_IN (0 references)
 pkts bytes target     prot opt in    out    source    destination        

Chain INET_OUT (0 references)
 pkts bytes target     prot opt in    out    source    destination      
  이제 IP, 포트, 프로토콜별 모니터링 설정 방법을 보겠습니다.

설정1. IP별 설정 방법
  아래는 자신과 192.168.1.1, 192.168.1.2 사이의 트래픽에 대한 설정입니다.
### 새로운 체인 생성 ###
$ /sbin/iptables -N INET_IN
$ /sbin/iptables -N INET_OUT

### 생성한 체인 장착 ###
$ /sbin/iptables -A INPUT -j INET_IN
$ /sbin/iptables -A OUTPUT -j INET_OUT

### 입력에 대한 규칙 설정 ###
$ /sbin/iptables -A INET_IN -s 192.168.1.1
$ /sbin/iptables -A INET_IN -s 192.168.1.2

### 출력에 대한 규칙 설정 ###
$ /sbin/iptables -A INET_OUT -d 192.168.1.1
$ /sbin/iptables -A INET_OUT -d 192.168.1.2

### 저장 ###
$ /sbin/service iptables save

### 결과 출력(레드햇 계열만 가능) ###
$ sudo iptables -v -n -L INET_IN
Chain INET_IN (2 references)
 pkts bytes target   prot opt in  out  source      destination        
  155 11594          all  --  *   *    192.168.1.2 0.0.0.0/0          
    6   504          all  --  *   *    192.168.1.1 0.0.0.0/0          

$ sudo iptables -v -n -L INET_OUT
Chain INET_OUT (2 references)
 pkts bytes target   prot opt in  out  source      destination        
    6   504          all  --  *   *    0.0.0.0/0   192.168.1.1        
   50  9474          all  --  *   *    0.0.0.0/0   192.168.1.2   

설정2. 포트별 설정 방법
  아래는 eth0의 22 포트(SSH)의 트래픽에 대한 설정입니다. eth0를 지정한 것은 인터페이스별로 설정하는 것도 가능하다는 것을 보여주기 위한 것일 뿐 필수적인 것은 아닙니다.
### 새로운 체인 생성 ###
$ /sbin/iptables -N INET_IN_PORT
$ /sbin/iptables -N INET_OUT_PORT

### 생성한 체인 장착 ###
$ /sbin/iptables -A INPUT -j INET_IN_PORT
$ /sbin/iptables -A OUTPUT -j INET_OUT_PORT

### 입력에 대한 규칙 설정 ###
$ /sbin/iptables -A INET_IN_PORT -i eth0 -p tcp --dport 22

### 출력에 대한 규칙 설정 ###
$ /sbin/iptables -A INET_IN_PORT -o eth0 -p tcp --dport 22

### 저장 ###
$ /sbin/service iptables save

### 결과 출력(레드햇 계열만 가능) ###
$ sudo iptables -v -n -L INET_IN_PORT
Chain INET_IN_PORT (1 references)
 pkts bytes target  prot opt in   out  source      destination
  965 75916         tcp  --  eth0 *    0.0.0.0/0   0.0.0.0/0  tcp dpt:22

$ sudo iptables -v -n -L INET_OUT_PORT
Chain INET_OUT_PORT (1 references)
 pkts bytes target  prot opt in   out  source      destination
  462 49192         tcp  --  *    eth0 0.0.0.0/0   0.0.0.0/0  tcp spt:22

설정3. 프로토콜별 설정 방법
  TCP, UDP, ICMP 프로토콜별 트래픽에 대한 설정입니다.
### 새로운 체인 생성 ###
$ /sbin/iptables -N INET_IN_PROTOCOL
$ /sbin/iptables -N INET_OUT_PROTOCOL

### 생성한 체인 장착 ###
$ /sbin/iptables -A INPUT -j INET_IN_PROTOCOL
$ /sbin/iptables -A OUTPUT -j INET_OUT_PROTOCOL

### 입력에 대한 규칙 설정 ###
$ /sbin/iptables -A INET_IN_PROTOCOL -i eth0 -m tcp -m tcp
$ /sbin/iptables -A INET_IN_PROTOCOL -i eth0 -m udp -m udp
$ /sbin/iptables -A INET_IN_PROTOCOL -i eth0 -m icmp -m icmp

### 출력에 대한 규칙 설정 ###
$ /sbin/iptables -A INET_IN_PROTOCOL -o eth0 -m tcp -m tcp
$ /sbin/iptables -A INET_IN_PROTOCOL -o eth0 -m udp -m udp
$ /sbin/iptables -A INET_IN_PROTOCOL -o eth0 -m icmp -m icmp

### 저장(레드햇 계열만 가능) ###
$ /sbin/service iptables save

### 결과 출력 ###
$ sudo iptables -v -n -L INET_IN_PROTOCOL
Chain INET_IN_PROTOCOL (1 references)
 pkts bytes target  prot opt in   out  source     destination        
  134 10232         tcp  --  eth0 *    0.0.0.0/0  0.0.0.0/0  tcp
    1   229         udp  --  eth0 *    0.0.0.0/0  0.0.0.0/0  udp
    3   308         icmp --  eth0 *    0.0.0.0/0  0.0.0.0/0  icmp type 255

$ sudo iptables -v -n -L INET_OUT_PROTOCOL
Chain INET_OUT_PROTOCOL (1 references)
 pkts bytes target  prot opt in   out  source     destination        
    3   252         icmp --  *    eth0 0.0.0.0/0  0.0.0.0/0  icmp type 255
    0     0         udp  --  *    eth0 0.0.0.0/0  0.0.0.0/0  udp
   67  8837         tcp  --  *    eth0 0.0.0.0/0  0.0.0.0/0  tcp


iptables를 이용한 IP 어카운팅 관련 팁 모음

팁1. 패킷과 바이트의 정확한 값을 보는 방법
  패킷과 바이트 값이 작을 때는 정확한 정수로 나오지만 값이 커지면 3기가바이트의 경우 '3G'처럼 보기 좋게 출력됩니다. 하지만 정확한 값이 필요할 경우에는 -x 옵션을 추가하면 됩니다.
$ sudo iptables -v -n -L INPUT
Chain INPUT (policy ACCEPT 1653K packets, 322M bytes)
...

$ sudo iptables -v -n -x -L INPUT
Chain INPUT (policy ACCEPT 1652848 packets, 321877443 bytes)
...

팁2. 패킷과 바이트 값 초기화 방법
  -Z 옵션을 사용하면 값을 초기화할 수 있습니다.
$ sudo iptables -v -n -L OUTPUT
Chain OUTPUT (policy ACCEPT 1771639 packets, 480398495 bytes)
...
$ sudo iptables -Z OUTPUT
$ sudo iptables -v -n -L OUTPUT
Chain OUTPUT (policy ACCEPT 15 packets, 1428 bytes)
...

팁3. 실시간으로 트래픽 모니터링 방법
  주기적으로 특정 명령어를 실행하게 만드는 watch 프로그램을 사용하면 간단히 해결할 수 있습니다.
$ sudo watch -n 1 iptables -v -n -L OUTPUT

팁4. iptables의 룰과 패킷&바이트 값을 저장 및 복구하는 방법
  리붓을 하면 기본적으로 iptables에 설정한 값들은 모두 사라지게 됩니다. 따라서 리붓전에 설정한 룰과 기록된 패킷 및 바이트 값을 리붓 후에도 그대로 사용하고 싶다면 별도의 명령어를 사용해야 합니다.
$ sudo iptables-save -c > /path/to/iptables.rules     ; 저장
$ sudo iptables-restore -c < /path/to/iptables.rules  ; 불러오기
  이걸 응용해서 부팅마다 지정한 위치에 있는 파일을 읽어오도록 /etc/rc.local 파일에 iptables-restore 명령어를 넣을 수도 있고 한 단계 더 진화해서 아래와 같이 시스템 V 서식의 스크립트를 만들어 /etc/init.d 디렉토리에 넣어 종료와 부팅 시 자동으로 저장과 불러오기를 하게 만들 수도 있습니다. 아래 스크립트는 레드햇 계열 기준의 스크립트이지만 윗 부분의 함수 라이브러리와 네트워크 설정을 불러오는 줄을 지우고 경로 변수($path)의 값만 적절히 원하는 디렉토리 이름으로 고쳐도 다른 배포판에서 아무 문제 없이 사용할 수 있습니다.
#!/bin/sh
#
# save-restore-iptables-counter
#
# chkconfig:  2345 08 92
# description:  Save and restore iptables counters
# processname: none
# Note: See how to use this script :
# http://www.cyberciti.biz/faq/linux-configuring-ip-traffic-accounting/
# Source function library.
. /etc/init.d/functions
 
# Source networking configuration.
. /etc/sysconfig/network
 
# Check that networking is up.
[ "$NETWORKING" = "no" ] && exit 0
 
path="/etc/sysconfig/iptables.rules.counter"
_restorecmd="/sbin/iptables-restore"
_savecmd="/sbin/iptables-save"
prog="save-restore-iptables-counter"
 
start() {
    echo -n $"Starting $prog: "
    $_restorecmd -c < "$path"
    retval=$?
    return $retval
}
 
stop() {
    echo -n $"Stopping $prog: "
    $_savecmd -c > "$path"
    retval=$?
    return $retval
}
 
restart(){
    stop
    start
}
 
case "$1" in
    start)
        start;;
    stop)
        stop;;
    restart)
        restart;;
    *)
        echo $"Usage: $0 {start|stop|restart}"
        exit 3
esac
  물론 만들기만 하면 자동으로 적용되는 것은 아니고 데비안 계열의 경우 'sudo update-rc.d 스크립트_파일명 defaults', 레드햇 계열의 경우 'sudo chkconfig --level 345 스크립트_파일명 on'을 통해 스크립트가 부팅과 종료 시 자동으로 작동하도록 등록을 해야 합니다.

팁5. 게이트웨이용 리눅스를 위한 명령어 문법 정리
  공유기 역할을 하고 있는 리눅스에서 IP 어카운팅을 하기에 적절한 명령어 목록입니다. 인터넷과 내부 컴퓨터 사이에서 패킷을 반대편으로 전달하기 때문에 FORWARD 체인을 이용한다는 것이 가장 큰 특징입니다.
iptables -N 체인이름
iptables -A FORWARD -j 체인이름
iptables -A 체인이름 -d IP주소
iptables -A 체인이름 -s IP주소
iptables -A 체인이름 -i ppp0 -p tcp -m tcp  --sport PORT
iptables -A 체인이름 -o ppp0 -p tcp -m tcp  --dport PORT

팁6. 일반 서버용 리눅스를 위한 명령어 문법 정리
  일반적인 리눅스 서버에서 IP 어카운팅을 하기에 적절한 명령어 목록입니다.
iptables -N 체인이름
iptables -N 체인이름
iptables -A INPUT -j 체인이름
iptables -A OUTPUT -j 체인이름
iptables -A 체인이름 -d IP주소
iptables -A 체인이름 -s IP주소


2010/12/06 18:36 2010/12/06 18:36
Posted
Filed under 프로그램과 명령어/네트워크와 보안
참조 원문 : Linux / UNIX: DNS Lookup Command

  host와 dig는 리눅스와 유닉스에서 공통적으로 사용할 수 있는 DNS 조회 명령어이며 아래는 각 사용별 예제를 보여주고 있습니다.


more..



more..

2010/12/06 15:57 2010/12/06 15:57
Posted
Filed under 프로그램과 명령어/네트워크와 보안
참조 원문 : 7 Uncommon uses of Iptables
관련 문서 : IptablesHowTo

  여러 소스를 통해 수집한 봇넷, 스패머, 브루트포서 등 악성 호스트의 IP 리스트를 제공하는 infiltrated.net이라는 곳이 있습니다. 참고로 저 사이트의 해당 리스트는 1시간에 1번씩 업데이트된다고 합니다. 이 글은 이곳에서 리스트를 끌어와 iptables에 적용시키는 팁입니다. 나중에 반전이 있으니 너무 흥미진진하게 읽진 마세요.

  일단 아래는 awk를 이용하여 IP 목록을 iptables 문법에 맞게 적용시킨 명령어를 화면에 출력하는 명령어입니다. 그냥 화면에만 출력하는 겁니다.
wget -qO - http://infiltrated.net/blacklisted|awk '!/#|[a-z]/&&/./{print "iptables -A INPUT -s "$1" -j DROP"}'
  그냥 화면에만 출력하는 거기 때문에 실제로 적용하려면 맨 뒤에 '| sh'을 붙여 화면에 출력하는 대신 진짜로 실행하게 만들어야 합니다. 단! iptables를 사용하려면 루트 권한이 필요하다는 걸 잊으시면 안 됩니다. 따라서 애초에 루트로 사용자를 변경한 후 실행하시거나 위 명령문 앞의 'iptables' 앞에 'sudo'를 추가로 넣어주셔야 합니다. 그럼 아래와 같이 되겠지요.
wget -qO - http://infiltrated.net/blacklisted|awk '!/#|[a-z]/&&/./{print "sudo iptables -A INPUT -s "$1" -j DROP"}' | sh
  아니면 리다이렉션을 통해 파일로 만든 다음에 해당 파일을 루트 권한으로 실행하는 방법도 있겠습니다.
wget -qO - http://infiltrated.net/blacklisted|awk '!/#|[a-z]/&&/./{print "iptables -A INPUT -s "$1" -j DROP"}' > black.lst
sudo sh black.lst
  또한 리스트는 1시간마다 업데이트되므로 일정 시간마다 cron으로 업데이트시키는 것이 좋겠지요.

  그런데 이 팁은 문제가 많습니다. 먼저 적용이 너무 오래 걸린다는 겁니다. 제가 실제로 실행을 해본 결과, 적용에 대략 1시간이 걸리더군요. 아무리 적용하는 줄이 4만 줄을 넘고 작업에 CPU를 많이 사용하지 않더라도 이렇게 오래 걸리면 사용하기 곤란하지요. 한 명령줄에 여러 IP를 등록하도록 스크립트를 좀 수정하면 훨씬 빨라질 것 같기는 한데 문제는 속도뿐만이 아닙니다. 몇 일 사용해보고 원문에 리플을 단 사람의 말에 따르면 자신이 가진 1달 분량의 데이터(어떤 데이터가 어느 정도인지 자세히 밝히진 않았습니다)와 해당 사이트의 리스트를 비교 분석한 결과 리스트 중 겨우 18개(그 중 스팸 메일 관련이라고 할 수 있는 25번 포트 건수는 겨우 2건)만이 일치했다고 합니다. 물론 그 사람이 가진 악성 호스트 데이터가 얼마나 있었는지 알 수 없으므로 그걸 통해 제가 효용성을 평가하기엔 무리가 있습니다. 하지만 그뿐만이 아닙니다. 며칠 후 또 리플을 달았는데 방화벽의 CPU 사용률이 100%를 찍기 시작했다고 합니다. 따라서 전 이 팁을 비추합니다 -_-;; 애초에 요즘 시대에 단순 IP 필터링만으로 뭘 막기엔 한계가 있죠. 그냥 이런 것도 있다는 정도로만 알고 넘어가는 것이 좋겠습니다.

2010/12/02 19:28 2010/12/02 19:28
Posted
Filed under 프로그램과 명령어/네트워크와 보안
참조 원문 : 55 Open Source Replacements for Popular Networking Tools

  제목만 네트워크지 시스템, 네트워크, 보안에 걸쳐 우량한 오픈 소스 프로그램은 다 갔다 소개하는 글입니다.


Anti-Spam
1. ASSP (대체 대상: Barracuda Spam and Virus Firewall, OS: 무관)
  "Anti-Spam SMTP Proxy"라는 이름의 SMTP 서버용 스팸 메일 필터링 프로그램입니다. Barracuda 같은 어플리언스는 아니기 때문에 스팸만 막을 수 있고 멀웨어는 막을 수 없습니다.


Backup
2. Bacula (대체 대상: Simpana Backup and Recovery , NetVault, HP StorageWorks EBS, OS: 윈도우, 리눅스, OS X)
  기업 규모에서 쓰기 적합한 네트워크 백업 솔루션입니다. 단일 시스템부터 수백, 수천 규모의 네트워크까지 모두 사용이 가능합니다.

3. Amanda (대체 대상: Simpana Backup and Recovery, NetVault, HP StorageWorks EBS, OS: 윈도우, 리눅스, OS X)
  50만대 이상의 서버와 데스크탑에서 사용되고 있는 유명한 클라이언트-서버 백업 솔루션입니다. 테이프와 디스크에 동시에 기록이 가능하며 4096비트의 공개키 암호화와 256비트의 AES 암호화를 지원합니다.

4. Partimage (대체 대상: Norton Ghost, NovaBackup, McAfee Online Backup, OS: 리눅스)
  네트워크를 지원하는 디스크 백업 툴로 한 소프트웨어를 여러 컴퓨터에 동시에 설치하는 기능도 있습니다.


Diagramming
5. Dia (대체 대상: Microsoft Visio, OS: 윈도우, 리눅스)
  Microsoft Visio로부터 영감을 받아 만들어졌으며 네트워크 다이어그램을 만들기 위한 특별한 모양들과 UML 다이어그램, 플로우차트를 포함하고 있습니다.

6. GraphViz (대체 대상: aiSee, OS: 윈도우, 리눅스, OS X)
  그래프 시각화 프로그램으로 텍스트 설명을 그래픽 형태로 변환해주는 기능을 가지고 있습니다.

File Transfer
7. WinSCP (대체 대상: CuteFTP, FTP Commander, OS: 윈도우)
  SFTP, FTP, SCP 프로토콜을 지원하며 커맨드 라인과 GUI(2종류 존재) 모두 사용이 가능합니다.

8. FileZilla (대체 대상: CuteFTP, FTP Commander, OS: 윈도우, 리눅스, OS X)
  SFTP, FTP, FTPS 프로토콜을 지원하며 윈도우 버전의 경우 FTP 서버도 지원합니다.


Gateway/Unified Threat Management Appliances
9. Endian Firewall Community (대체 대상: Check Point Security Gateways, McAfee Unified Threat Management (UTM) Firewall , SonicWall, Symantec Web Gateway, OS: 리눅스)
  방화벽, VPN, 게이트웨이 안티 바이러스, 안티 스팸, 웹 보안, 이메일 컨텐츠 필터링 등이 포함되어 있으며 별도의 PC 설치한 후 자신의 환경에 알맞게 세팅하여 보안 장비로 사용할 수 있게 해주는 제품입니다.

10. Untangle Lite (대체 대상: Check Point Security Gateways, McAfee Unified Threat Management (UTM) Firewall , SonicWall, Symantec Web Gateway, OS: 리눅스)
  Endian과 마찬가지로 자유 소프트웨어와 자신의 PC를 이용해 자신이 원하는 게이트웨이 보안 어플리언스를 만들 수 있게 해주는 제품입니다. 웹 필터, 바이러스 클록커, 스팸 블록커, 애드 블록커, 방화벽, QoS, 침입 방지, 프로토콜 컨트롤, OpenVPN 등의 기능이 있습니다.

11. ClearOS (대체 대상: Check Point Security Gateways, McAfee Unified Threat Management (UTM) Firewall , SonicWall, Symantec Web Gateway, OS: 리눅스)
  소규모 업체를 대상으로 만들어졌으며 게이트웨이, 서버, 네트워킹 기능을 담고 있습니다. 주요 기능은 멀티WAN, VPN, 방화벽, 안티 멀웨어, 안티 스팸, 침입 방지, 컨텐츠 필터링, 파일 및 프린터 서비스, 메일 서버, 웹 서버, 그룹웨어가 있습니다.


Intrusin Detection
12. Open Source Tripwire (대체 대상: Tripwire, OS: 윈도우, 리눅스)
  현재는 상용 라이센스가 된 Tripwire의 과거(2000년) 오픈 소스 시절의 버전입니다. 네트워크를 모니터링하다가 변화가 일어났을 때 경고를 보내는 기능이 있습니다.

13. AFICK (대체 대상: Tripwire, OS: 윈도우, 리눅스)
  "Another File Integrity Checker"는 Tripwire가 상용화되자 그에 대한 대체 수단으로 등장한 프로그램입니다. 보안과 소프트웨어 관리에 모두 유용하며 빠르고 이식성 있게 디자인되었습니다.


IT Inventory Management
14. OCS Inventory NG (대체 대상: LANDesk Inventory Manager, Systemhound, OS: 무관)
  네트워크 내에서 사용 중인 모든 하드웨어와 소프트웨어를 알아내기 위한 차세대 툴입니다. 이 프로그램으로 찾아낸 대상은 아래에 있는 GLPI 같은 툴을 이용해 추적할 수 있습니다. 또한 네트워크를 통해 스크립트나 소프트웨어를 쉽게 설치할 수 있습니다.

15. GLPI (대체 대상: LANDesk Inventory Manager, Systemhound, OS: 무관)
  기업의 모든 기술적 리소스를 추적하기 위한 데이터베이스를 생성하는 프로그램입니다.


Log File Monitoring and Analysis
16. AWStats (대체 대상: Sawmill, TriGeo, OS: 윈도우, 리눅스, OS X)
  로그 파일을 읽고 그래프를 생성하여 웹, 스트리밍, FTP, 메일 서버를 통해 통계를 보여줍니다. 큰 파일을 매우 빠르게 분석하며 대부분의 유명한 서버 툴들을 지원합니다.

17. Snare (대체 대상: LogLogic, SenSage Log Management, OS: 윈도우, 리눅스, OS X, 기타)
  여러 오픈 소스 로그 파일 콜렉션과 분석 에이전트의 모음집입니다. 많은 상용 제품들이 Snare 에이전트를 사용하고 있습니다.


Network Firewall
18. Devil-Linux (대체 대상: Barricuda NG Firewall, Check Point Appliances, OS: 리눅스)
  원래는 방화벽을 위해 제작된 것으로 지금은 서버와 네트워킹 기능도 포함하고 있습니다. 대부분의 방화벽 제품과 달리 시스템의 하드 드라이브에 설치하지 않고 CD-ROM이나 플래시 드라이브만으로 완벽히 사용이 가능하게 만들어졌습니다.

19. Turtle Firewall (대체 대상: Barricuda NG Firewall, Check Point Appliances, OS: 리눅스)
  iptables 기반의 방화벽으로 구형 PC를 리눅스 기반의 네트워크 방화벽으로 사용할 수 있게 만들어줍니다. 환경 설정을 편리한 웹 인터페이스로 할 수도 있고 XML 파일을 직접 수정해서 할 수도 있습니다.

20. Shorewall (대체 대상: Barricuda NG Firewall, Check Point Appliances, OS: 리눅스)
  iptables 설정을 쉽게 해주는 프로그램입니다.

21. Sentry Firewall (대체 대상: Barricuda NG Firewall, OS: 리눅스)
  네트워크 방화벽, 서버, IDS 노드로 사용할 수 있는 프로그램입니다. CD를 통해 바로 부팅할 수 있으며 방화벽 설정을 매우 쉽고 빠르게 할 수 있습니다.


Network Management
22. OpenNMS (대체 대상: IBM Tivoli Network Manager, OpManager, OS: 윈도우, 리눅스, OS X, iOS)
  자칭 "오픈 소스 모델로서 세계 최초 기업 제품 수준으로 만들어진 네트워크 관리 프로그램 플랫폼"으로서 자동적이고 지능적인 탐지, 이벤트와 알림 관리, 서비스 보장과 성능 관리 기능을 지원합니다.

23. RANCID (대체 대상: Orion NCM, CiscoWorks LAN Management Solution, OS: 리눅스)
  'Really Awesome New Cisco confIg Differ'의 약자로서 설정 파일을 백업함으로써 네트워크의 변화를 추적하고 발견된 문제를 해결하는데 도움을 줍니다. 시스코 제품 외에도 주니퍼 라우터, 카탈리스트 스위치, 파운드리 스위치, 레드백 NAS, ADC EZT3 mux 장비를 지원합니다.

24. Zenoss Core (대체 대상: IBM Tivoli Network Manager, OpManager, OS: 리눅스, OS X)
  가용성과 성능 모니터링, 이벤트 관리, 리포팅 기능이 합쳐진 설정 관리 데이터베이스입니다. 웹 포탈과 대시보드를 포함하고 있기 때문에 무슨 일이 일어나는지 한 눈에 파악할 수 있습니다.


Network Monitoring
25. Nagios (대체 대상: Nimsoft, Orion NPM, OpManager, OS: 리눅스, 유닉스)
  자칭 "오픈 소스 모니터링계의 산업 표준"인 모니터링 툴입니다. 윈도우를 포함한 여러 플랫폼을 모니터링할 수 있습니다.

26. Opsview Community (대체 대상: IBM Tivoli Network Manager, OpManager, OS: 리눅스)
  여러 오픈 소스 툴을 모아서 사용하기 쉽게 웹 기반의 인터페이스로 만든 모니터링 툴입니다. 상용 엔터프라이즈 에디션에서는 기술 지원과 몇 가지 추가적인 기능이 포함되어 있습니다.

28. Cacti (대체 대상: Nimsoft, Orion NPM, OpManager, OS: 윈도우, 리눅스)
  RRDTool 데이터베이스에 보관된 네트워크 데이터를 관리하고 그래프로 보여주는 사용자 친화적인 인터페이스를 가진 모니터링 툴입니다. 만약 관리하는 네트워크가 클 경우 데이터를 수집하기 위해 Spine 같은 별도의 플러그인을 사용하는 것이 좋습니다.

29. Ganglia (대체 대상: Nimsoft, Orion NPM, OpManager, OS: 리눅스, 기타)
  클러스터나 그리드 같은 고성능 컴퓨팅 시스템을 위해 만들어진 툴로 측정 능력이 뛰어난 계층적 아키텍쳐를 사용합니다.

30. Zabbix (대체 대상: Nimsoft, Orion NPM, OpManager, OS: 윈도우(에이전트만 가능), 리눅스, OS X)
  엔터프라이즈급 분산 모니터링 시스템으로 최대 10만 네트워크 장비에 대한 100만 메트릭을 처리할 수 있습니다. 유료 기술 지원과 상업용 어플리언스도 있습니다.

31. Pandora FMS (대체 대상: Nimsoft, Orion NPM, OpManager, OS: 윈도우, 리눅스, OS X)
  FMS는 'Flexible Monitoring System'의 약자로서 프로그램, 서버, 네트워크 장비, 심지어 주식 동향도 모니터링할 수 있습니다. GUI가 미려하며 실시간 및 통계 그래프를 볼 수 있습니다.

32. NDT (대체 대상: NetFlow Traffic Analyzer, Nimsoft, Orion NPM, OpManager, OS: 리눅스)
  'Network Diagnostic Tool'의 약자로 네트워크 성능 문제를 진단하는 프로그램입니다. 클라이언트/서버 모델의 프로그램으로 서버는 리눅스가 맡아야 하지만 클라이언트는 자바를 통해 돌아가기 때문에 자바가 사용 가능한 어느 시스템에서도 사용할 수 있습니다. 다른 모니터링 툴만큼 좋진 않지만 네트워크 성능 진단 자체는 매우 뛰어납니다.

33. Net-SNMP (대체 대상: Nimsoft, Orion NPM, OpManager, OS: 윈도우, 리눅스)
  네트워크 장비의 상태를 모니터링하기 위해 SNMP v1, v2c, v3 프로토콜을 사용합니다. SNMP만 사용하기 때문에 상용 및 다른 오픈 소스 모니터링 소프트웨어만큼 완벽하진 않습니다.


Network Simulation
34. GNS3 (대체 대상: OpNet Modeler, iTrinegy Network Emulator, OS: 윈도우, 리눅스, OS X)
  연구, 네트워크 설계, 자격증 공부에 유용한 전설적인 그 에뮬레이터입니다. 시스코나 주니퍼의 설정을 테스트해볼 수 있습니다.


Packet Analysis
35. Wireshark (대체 대상: OmniPeek, CommView, OS: 윈도우, 리눅스, OS X)
  자칭 "세계 최고의 네트워크 프로토콜 분석기"로서 수백 개의 프로토콜에 대한 분석 능력, 라이브 캡쳐와 오프라인 분석, 매우 강력한 디스플레이 필터, 강력한 VoIP 분석 등의 장점을 가진 프로그램입니다.

36. tcpdump (대체 대상: OmniPeek, CommView, OS: 리눅스)
  리눅스용 커맨드 라인 기반의 패킷 분석 프로그램입니다.

37. WinDump (대체 대상:  OmniPeek, CommView, OS: 윈도우)
  tcpdump의 윈도우 버전입니다.


Password Crackers
38. Ophcrack (대체 대상: Access Data Password Recovery Toolkit, Passware, OS: 윈도우, 리눅스, OS X)
  GUI를 통해 브루트 포스와 레인보우 테이블 공격을 지원하는 패스워드 크랙커입니다.

39. John the Ripper (대체 대상: Access Data Password Recovery Toolkit, Passware, OS: 윈도우, 리눅스, OS X)
  사전 공격이 가능한 패스워드 크랙커입니다.


Remote Access/VPN
40. OpenVPN (대체 대상: CheckPoint VPN-1, Cisco VPN, OS: 윈도우, 리눅스, OS X, 모바일 장비)
  다운로드 수가 300백만 이상인 세계에서 가장 인기 있는 SSL VPN 솔루션입니다. 모든 주요 OS(모바일 OS들 포함)에서 작동하며 다양한 모드의 액세스, 접근 제어, 유동적 프로그램 배치, 호스트 검사 등의 기능이 있습니다.

41. TightVNC (대체 대상: GoToMyPC, Numara Remote Manger, OS: 윈도우, 리눅스)
  파일 전송, 비디오 미러 드라이브 지원, 원격 데스크탑 스케일링, 이중 패스워드 지원 등의 기능이 있는 원격 제어 프로그램입니다. 이름처럼 타이트한 인코딩을 거치기 때문에 트래픽 측면에서 매우 효율적입니다.

42. UltraVNC (대체 대상: GoToMyPC, Numara Remote Manger, OS: 윈도우)
  텍스트 챗, 파일 전송, 암호화 등의 기능이 있습니다.

Router Software
43. Vyatta (대체 대상: Cisco routers, OS: 리눅스)
  시스코의 라우터와 비교해도 손색없는 성능을 보여주는 라우팅 소프트웨어입니다. 무료 코어 소프트웨어 외에도 기업 고객을 위한 유료 서비스들을 지원합니다.

44. FREESCO (대체 대상: Cisco routers, OS: 리눅스)
  이더넷 브릿지나 라우터, 전화선이나 전용 회선 라우터, HTTP, DNS, FTP, SSH, 프린터 서버로 사용할 수 있으며 표준 리눅스 방화벽과 NAT도 포함한 솔루션입니다.

45. Tomato (대체 대상: Lynksys, Buffalo 등 브로드컴 기반의 라우터의 펌웨어)
  Linksys' WRT54G/GL/GS, Buffalo WHR-G54S/WHR-HP-G54 등 브로드컴 기반의 라우터의 표준 펌웨어 대신 사용할 수 있는 펌웨어입니다. 대역폭 사용량 모니터, 고급 QoS와 접근 제한, 고급 P2P 제한, 무선 지역 조사(Wireless Site Survey) 등의 기능을 사용할 수 있습니다.

Server Software
46. WampServer (대체 대상: Microsoft Windows Server, OS: 윈도우)
  윈도우에서 Apache, MySQL, PHP를 한 번에 설치하고 작동시켜주는 솔루션입니다.

47. XAMPP (대체 대상: Microsoft Windows Server, OS: 윈도우, 리눅스, OS X, 솔라리스)
  Apache, MySQL, PHP, Perl을 한 번에 설치해주며 추가적인 오픈 소스 툴도 포함되어 있습니다. 추가적인 툴은 어떤 OS에 설치하는가에 따라 다릅니다.

48. AppServ (대체 대상: Microsoft Windows Server, OS: 윈도우, 리눅스)
  역시 위와 비슷하며 설치 및 설정까지 1분 내로 끝내는 것을 목표로 만들어졌습니다. 윈도우보다 리눅스에서 더 잘 작동합니다.

49. FreeNAS (대체 대상: Thecus, NetGear ReadyNAS 등 NAS 제품, OS: FreeBSD)
  CIFS(Samba), FTP, NFS, rsync, AFP 프로토콜, iSCSI, S.M.A.R.T., 로컬 유저 인증, 소프트웨어 RAID를 지원하는 NAS 서버 솔루션입니다. 저용량(64MB)이기 때문에 일반 하드 드라이브는 물론 플래시 드라이브에도 설치할 수 있습니다.


Vulnerability Testing
50. BackTrack (대체 대상: Lumension Scan, Sunbelt Network Security Inspector, Saint, OS: 리눅스)
  자칭 "가장 널리 쓰이는 침투 테스팅 프레임워크"로서 침투 테스팅용으로 유명한 오픈 소스 툴들을 많이 담고 있는 완전한 하나의 리눅스 배포판입니다. LiveDVD로 부팅해서 사용할 수도 있고 설치해서 사용할 수도 있습니다.

51. Metasploit (대체 대상: Lumension Scan, Sunbelt Network Security Inspector, Saint, OS: 윈도우, 유닉스)
  네트워크의 취약점을 분석할 때도 쓰이고 블랙 햇(악의적 해커)이나 화이트 햇(보안 전문가)이 새로운 취약점을 만들 때도 쓰이는 프로그램입니다. 상용 제품으로 "Metasploit Express"라는 침투 테스팅 버전도 있는데 전문가가 아닌 사람도 쓸 수 있도록 사용하기 쉬운 GUI로 되어 있습니다.

52. Nmap (대체 대상: Lumension Scan, Sunbelt Network Security Inspector, Saint, OS: 윈도우, 리눅스, OS X)
  네트워크에 있는 장비를 모니터링하고 보안적 취약점을 발견하는데 유용한 툴입니다. 커맨드 라인으로 사용할 수도 있고 GUI로 사용할 수도 있습니다. 디버깅과 데이터 전송을 위해 Ncat, 두 스캔 사이에서 차이점을 찾아내는 Ndiff도 포함하고 있습니다. 참고로 The Matrix Reloaded, Die Hard 4, The Bourne Ultimatum 등의 영화에도 등장했었습니다.

53. OpenVAS (대체 대상: Nessus, OS: 윈도우, 리눅스, OS X)
  몇 년 전에 취약점 스캐너인 Nessus가 오픈 소스 라이센스에서 상용 라이센스로 바꼈을 때 원래 Nessus를 이어받은(즉, fork 된) 프로그램입니다.

54. Sara (대체 대상: Nessus, Lumension Scan, Sunbelt Network Security Inspector, Saint, OS: 윈도우, 리눅스, OS X)
  "Security Auditor's Research Assistant"의 약자로 지금은 개발이 중단됐지만 아직도 쓸만한 취약점 테스팅 툴입니다. 다른 많은 오픈 소스 툴을 이용하며 네트워크에 대해 "조용한" 스캐닝이 가능합니다.


Web Filtering
55. DansGuardian Replaces McAfee Family Protection NetNanny, OS: 리눅스, OS X)
  URL 필터링, 도메인 필터링, 컨텐츠 프레이즈 필터링, PICS 필터링, MIME 필터링, 파일 확장자 필터링, POST 제한 기능을 갖춘 필터링 솔루션입니다. 디폴트 세팅은 초등학교에 알맞은 수준으로 되어 있으며 쉽게 원하는 수준으로 변경할 수 있습니다.


2010/11/25 17:49 2010/11/25 17:49