반응형

전체 글 805

Socket - 03. Client socket

/* * http://sosal.tistory.com/ * made by so_Sal */ #include int socket( int __domain, int __type, int __protocol); int connect(int socket, const struct sockaddr *address, size_t address_len); :: socket :: Socket - 01. Socket(), sockaddr 글을 참조하세요. :: connect :: Socket - 02. Socket - Server socket 글을 참조하세요. 기본적인 서버 - 클라이언트 소켓 구조에서 클라이언트측 소스는 무척이나 간단합니다. 정보를 주고 받을 수 있는 환경을 구축해야 하는 서버에 비하여 클라이언트는 전화..

시스템 보안 02.부팅초기화 스크립트 작성 문제

/* * http://sosal.tistory.com/ * made by so_Sal */ 보안모니터링 프로그램 secure agent를 컴파일하여 실행파일을 얻었다. 그런데 이 실행파일은 daemon형태로 시스템에서 항상 실행되어야 하는 프로그램이다. 시스템이 부팅시마다 secure agent가 실행될 수 있도록 완전한 부팅 스크립트를 작성하여 적절한 위치에 설치하시오. 현재 secure agent 데몬의 실행파일 경로는 /usr/local/bin/sagentd이며, 설치하고자 하는 시스템은 solaris이다. 데몬이란 ? // background에서 시스템을 위해 움직이는 프로그램을 말한다. 사용자의 여러가지 요청에 서비스하기위해 항시 돌아가는 프로세스 문제의 요지는? // "시스템이 부팅시마다 실행..

시스템 보안 01.inetd 데몬 프로세스 반영 문제

/* * http://sosal.tistory.com/ * made by so_Sal */ 그동안 ftp서버로 사용하던 시스템을 ftp서비스를 더이상 제공하지 않고 다른 용도로 사용하게 되었다. 현재 제공되고 있는 ftp서비스를 중지시키고 앞으로도 부팅시에도 더이상 제공되지 않도록 필요한 시스템 설정을 바꾸시오. inetd.conf :: inetd 설정파일 이 설정파일의 수정을 통하여 ftp 서비스를 중지시키고, 부팅시 더이상 제공되지 않도록 만들어보자. 설정파일은 /etc에 존재한다. vi /etc/inetd.conf:set nu // 위 그림의 좌측과 같이 번호를 띄울 수 있다. 17번 줄을 보니, 아래 19,20번 줄이 FTP와 TELNET 서비스에 대한 내용인듯 하다. ftp 서비스를 중단시키기 ..

커널 분석기 Vi + ctags + cscope

vi. ~/.vimrc :: ~는 사용자 home풀더. .vimrc 파일은 vim을 실행시킬때 자동으로 실행되는 파일입니다. // .vimrc 내용 // set tabstop=4 # 탭간격 4칸 set shiftwidth=2 # >>나 cscope.files [cscope]를 실행합니다. cscope는 두부분으로 나뉩니다. 윗부분은 결과물, 아랫부분은 검색부분입니다. 각 부분은 [tab] 키로 이동할 수 있습니다. Find this C symbol: ctags와 마찬가지로 C심볼을 찾습니다. (변수, 함수, 매크로, 구조체 등) Find this global definition: 전역 선언만 검색합니다. Find functions called by this function: 한 함수에 의해 호출되는 또다..

Linux/Linux_technic 2009.10.01

C언어 String과, 관련함수 function

/* * made by so_sal * http://sosal.tistory.com/ */ #include :: c언어 에서 사용합니다. 문자열 처리 함수들을 모아놓은 헤더파일입니다. #include :: c++에서 사용합니다. (사실 안에 string.h를 포함합니다.) strlen() :: string lenth :: 길이 구하기 strcpy() :: string copy :: 복사 strncpy() :: string + n + copy :: n만큼 복사 strcmp() :: string compare :: 문자열 비교 (대소문자 구분) strncmp() :: string + n + copy :: 문자열 n만큼 비교 (대소문자 구분) strcat() :: string concatenate :: 문자열..

Pointer * Reference

/* * made by so_sal * http://sosal.tistory.com/ */ #include using namespace std; 포인터란? :: 주소값을 직접 컨트롤 하기 위해서, 실제 어떤 주소값을 저장하는 변수입니다. :: 주소값 수의 크기는 4byte입니다. 따라서 포인터의 크기도 4바이트입니다. 자료형에 따라서 포함하는 메모리 크기가 다릅니다. 따라서 포인터는 메모리의 처음만을 가르치고, 포인터 자체의 자료형에 따라서 메모리를 읽게 됩니다. ex) int형 포인터 :: int* pointer; 또는 int *pointer; char형 포인터 :: char* pointr; 또는 char *pointer; (포인터의 위치는 관계없다) 변수명 앞에 &(reference)를 붙인다면, 그..

리눅스 Socket - socket(), sockaddr

/* * made by so_sal * http://sosal.tistory.com/ */ #include //소켓 관련 헤더 int socket( int __domain, int __type, int __protocol) domain :: AF_INET :: 가장 흔히 사용되는 ARPA 인터넷 프로토콜 AF_UNIX :: 유닉스 내부 프로토콜 AF_ISO :: 국제 표준 협회 (International Standards Organization) 프로토콜 /usr/include/Linux/socket.h라는 파일에 더 많은 도메인이 있습니다. 대게 AF_INET을 사용합니다. type :: SOCK_STREAM :: TCP 기반의 신뢰적, 순차적 양방향 형의 소켓을 사용 SOCK_DGRAM :: UDP ..

리눅스 FILE - open(), close() 시스템콜

/* * made by so_sal * http://sosal.tistory.com/ */ open() 1. 함수의 정의 2. 매개변수 3. 권한 close() 1. 함수의 정의 #include //file control header #include #include int open( const char *path, int oflags ); int open( const char *path, int oflags, mode_t mode ); open 함수는 path 매개변수의 경로를 통해서 열고 파일 서술자를 리턴합니다. 파일 서술자를 이용해 파일컨트롤, read, write 등 시스템콜을 이용할 수 있습니다. open 은 파일 또는 장치로의 접근 경로를 만듭니다.. open 함수의 리턴값,, 파일 서술자는 ..

리눅스 FILE - read() 시스템콜

/* * made by so_sal * http://sosal.tistory.com/ */ 정수값 이름 0 표준 입력( stdin ) /dev/stdin 1 표준 출력( stdout ) /dev/stdout 2 표준 오류( stderr ) #include size_t read( int fildes, void *buf, size_t nbytes ); 첫번째 인자 :: fildes :: 파일 서술자 두번째 인자 :: *buf :: 읽어와서 저장할 버퍼. 새번째 인자 :: nbytes :: 읽을 수 있는 최대 byte의 수 read는 총 읽어와서 buf에 저장한 byte의 수를 리턴합니다. #include #include int main(){ char buffer[128]; int nread; nread = ..

반응형