대충 정리한 네트워크 용어들입니다. 해킹쪽에 한번 도전하려는데 용어들의 개념을 좀 잡아야 해서 블로그에 정리한 것들을 올립니다.

  • 프로토콜
     프로토콜이란 표준화된 통신 규약을서 네트워크 기능을 효율적으로 발휘하기 위한 협정이다. 대한민국 사람은 대한민국말, 영국사람은 영어로 말하는 것과 마찬가지로, 컴퓨터가 네트워크에서 이야기를 나눌 때의 규칙이 바로 프로토콜이다. 자주 듣는 TCP/IP같은 것이 바로 그것이다.
  • 포트
     포트는 영어로 port: 항구란 뜻이다. 항구는 배가 도착하는 곳으로, 컴퓨터 용어로는 외부와의 연결 창구를 뜻한다. 보통 인터넷을 의미하는 www웹은 80번 포트를 사용하고, telnet은 23번, ftp는 21번, ssh는 22번 등 각각의 네트워크는 포트가 정해져 있다. 이렇게 정해져 있는 포트를 잘 알려진 포트라 하여 'well-known port'라고 부른다. 또한 사용자가 임의로 설정할 수 있는 포트 또한 있다. 좀더 자세히 살펴보면 다음과 같다.
  1. Well-Known Port
     IANA(Internet Assigned Numbers Authority)에서 관리하는 공식적으로 지정된 포트이다. 1번에서부터 1023번까지 지정되어 있고 이 사이 값들은 사용자가 임의로 써서는 안 된다.
  2. 주요 Well-Known Port
    20 : ftp-data 포트 파일 전송에 관련된 포트
    21 : ftp 포트
    22 : ssh
    23 : telnet
    25 : smtp
    42 : host name server 포트
    53 : 도메인 네임 서버 포트
    69 : tftp 포트(trivial ftp)
    70 : Gopher
    79 : finger 포트
    80 : www http 포트
    109 : POP2 포트
    115 : sftp 포트(simple ftp)
    443 : http 프로토콜(TLS/SSL)
    512 : 리모트 프로세서 실행 포트
    513 : 텔넷 리모트 로그인 포트
  • 익스플로잇(exploit)
     익스플로잇은 소위 말하는 해킹 툴이라고 생각할 수 있다. 공략하고자 하는 서버의 취약점 환경에 맞추어 그 취약점을 공략해, 하고자 하는 목표를 이룰 수 있게 프로그래밍해 놓은 것이 익스플로잇이다. 익스플로잇을 작성할 수 잇어야 해커라 불릴 수 있지만 요즘은 이런 익스플로잇만 찾아 불특정한 서버를 공격하는 스크립트 키디들이 늘어나고 있는 추세이다.
  • 데몬(Demon)
     유닉스 계열(리눅스 포함)의 운영체제에서 항상 수행하고 있으면서, 정해진 시간이 되거나 요청이 들어오게 되면 어떤 일을 수행하도록 된 프로세스들이다 ftpd, mysqld등이 있다.
  • 프로세스(process)
     컴퓨터 내에서 실행 중인 프로그램의 인스턴스이다. 태스크라는 용어로도 쓰이며, 보통 프로그램 시작시 시작된다. 프로세스는 그 프로세스가 추적 관리될 수 있게 하기 위한 특정한 데이터 세트가 관련되어 실행 중인 프로그램이다. 여러 명의 사용자들에 의해 공유되고 있는 응용 프로그램은 일반적으로 각 사용자들의 실행 단계에서 하나의 프로세스를 갖는다.
  • 프로시저(procedure)
     프로그래밍에서 프로시저는 루틴이나 서브루틴 및 함수와 같은 뜻이다. 하나의 프로시저는 특정 작업을 수행하기 위한 프로그램의 일부이다.
  • 패킷(packet)
     공유된 매체를 나누어 쓰기 위한 방법으로 한마디로 응용 계층의 데이터 단위로서 네트워크로 전송되는 데이터의 단위이다. 쉽게 이해하려면 인터넷에 흘러다니는 정보 조각으로 생각할 수 있다. 패킷 교환 방식의 네트워크에서는 데이터를 패킷 단위로 분해한 후 전송하고, 다시 원래 데이터로 재조립하는 과정을 거치게 된다. 인터넷을 통해 데이터를 전공할 때, TCP/IP의 TCP계층이 이 파일을 패킷으로 자르게 되고 패킷에는 번호가 붙여져 원하는 목적지로 보내진다. 목적지에 보내어진 패킷이 도착하면, TCP계층의 수신부에서 다시 패킷을 재조립한다.
  • ssh(secure shell)
     원격 컴퓨터에 안전하게 액세스하기 위한 유닉스 기반의 명령 인터페이스 및 프로토콜이다. SSH는 네트워크 관리자들이 웹서버를 포함한 여러 종류의 서버들을 원격지에서 제어하기 위해 널리 사용된다. SSH는 실제로 초창기 유닉스 유틸리티인 rlogin, rsh, rcp에 보안 기능이 추가된 버전인 slogin, ssh, 그리고 scp등, 세 가지 유틸리티들의 모음이다.
     SSH명령은 몇 가지 방식으로 암호화가 보장된다. 클라이언트/서버 연결의 양단은 전자 서명을 사용하여 인증되며, 패스워드는 암호화됨으로써 보호된다.
     SSH는 쌍방의 접속과 인증을 위해 RSA 공개 키 암호화 기법을 사용한다. 암호화 알고리즘에는 Blowfish, DES 및 IDEA등이 포함되며, 기본 알고리즘은 IDEA이다.
  • 가비지(garbage, 쓰레기값)
     메모리 공간 내에서 더 이상 필요치 않다고 판단되어 운영체계에 의해 회수된 데이터 저장 공간으로, 사용자가 입력하지 않았지만 메모리상에 어떤 값이 가비지로 위치해 있을 수 있다.
  • 세그먼테이션(segmentation)
     긴 프로그램을 부분적으로 주기억 장치에 올리기 위해 여러 부분으로 나누는 것이다.

'컴퓨터 > Web' 카테고리의 다른 글

Google의 Youtube인수설?  (6) 2006.10.09
Google Code Search  (7) 2006.10.08
네띠앙의 운영정지를 보고  (2) 2006.08.19
Google Package  (2) 2006.08.15
Google에 무궁화 꽃이 피었습니다.  (1) 2006.08.15
Buy me a coffeeBuy me a coffee

+ Recent posts