본문 바로가기

Computer Engineering

LINUX#2 - 방화벽 요즘은 특히 보안이 중요해 지고 있다. 왠만한 사이트들도 해킹을 당할 가능성이 크다. 그런 사람들이 마음먹고 공격하려고 하면 뚫릴 수 있다고 본다. 해킹을 당하지 않는 방법은 인터넷을 연결하지 않는 것이다. ㅋㅋㅋ 리눅스에서 기본적으로 방화벽을 설치할 수 있다. iptable 을 이용해보자. 간단하게 말하면 PORT 를 막는 것이다. 완전히 다 닫는 것은 특정 포트를 주석처리 하면 되지만, 그 PORT는 어떤 클라이언트라고 해도 문제가 있다. PORT 를 누구한테는 열어두고 누구에게는 닫아놓고 ... PORT를 열고 닫는 것이다. 커맨드는 쉽게 외워지는 것이 아니어서 형식이 어떤지 보고 하는 것이 좋을 것이다. SYNOPSIS iptables [-t table] -A chain rule-specific.. 더보기
LINUX#2 - Apache(2) 우리가 설치한 아파치(Apache)가 어떻게 동작하는지 알아보자. httpd 가 메모리에 올라가서 웹서버로 동작한다. 설정파일은 httpd.conf 이 파일하나에 많은 파일이 include 되어있다. 1.3 ver ,2.0 ver, 2.2 ver 이런 버젼으로 나누어진다. 굳이 상위 버젼으로 설치할 필요는 없다. 각 버젼마다 패치, 업데이트가 이루어 지고 있다. 반드시 최신 버젼이 좋은 것은 아니다. 자신의 서버에 맞게 사용하면 되는 것이다. 2.2 ver 은 최근에 만들어져서 오히려 1.3 보다 안정성면에서 낮을 수 있다. 기존에 운영하던 사람들 말고 처음 사용하는 경우에는 최신 버젼을 쓰는 것이 좋다. DSO 방식 동적 공유라는 방식과 Static 방식 정적 공유 방식으로 나누어지는데 요즘은 D.. 더보기
LINUX#2 - Apache apache php mysql 이용 설치도 중요하지만 연동이 되는 것이 중요하다 그래야 3가지를 합쳐서 웹프로그래밍을 할 수 있다. 설치할 때 연동이 잘 될수 있게 설치 순서를 지켜주어야한다. 1. DB 를 설치한다. 설치해서 보면 # find . -name *.c 많은 C언어 소스들을 볼 수 있다. C언어 공부시에도 많은 도움이 될 것같다. 우리의 최종목적은 mysqld 를 만드는 것이다. # find . -name mysqld 를 쳐보면 아무것도 안나온다. *.c 파일을 컴파일을 해서 mysqld 를 만들어야 하는 것이다. # whereis gcc 를 확인해서 일단 컴파일러가 설치되어 있는지 확인을 한다. 설치가 되어있으면 컴파일러가 동작할 수 있는 것이다. 소스 한 두개면 직접 컴파일 할 수 있으나.. 더보기
LINUX#2 - Logrotate 메세지를 보내는 측과 받는쪽에서 서로 교환하기 위해서는 양쪽에서 모두 설정을 해야된다. # cd /var/log //여기에서 많은 로그 파일을 확인할 수 있다. 그런데 특이하게 abc 라는 파일과 같은 파일명 abc.1 로 되어있는 파일이 보인다. 이런 파일들은 백업파일이다. # rotate log files weekly백업을 잘 해주는 것도 중요하다. 백업을 안해주고 사용하게 되면 로그 파일의 크기가 너무 커지게 된다. 그리고 로그 파일이 너무 커지면 파일을 기록하는 syslog.conf 에 부담을 주게된다. 이런 것을 방지하는 것이 logrotate 가 된다. 자신의 컴퓨터에서 # rpm -qf /usr/sbin/logrotate 로 확인할 수 있다. rotate 즉, 순환. 백업받고 새로 만드는.. 더보기
LINUX#2-Log Service cd /var/log 에 들어가면 messages 라는 파일을 확인 할 수 있다. 여기가 가장 중요한 기록이 남는 곳이다. 예를 들어 DNS 와 관련된 기록을 보려면 # cat messages | grep DNS 해킹을 당했을 때 추적시에도 로그 파일을 확인하면 알 수 있다. 여기에서 기록이 없다면 서버를 제대로 운영을 할 수 없고, 찾아 낼 수 없을 것이다. 그래서 관리자는 로그파일을 제대로 관리해 주어야 될 것이다. 관리자가 서버를 따로 만들어서 각종 장비에 대한 내용을 한 쪽으로 넘겨줄 수 있다. 농협의 로그서버에는 기록이 남아 있을 것이다. 만약에 해킹을 당했는데 로그 조차 안남았으면 복구에 어려움을 얻을 것이다. 그것을 조금이라도 파악하기 위해서는 ... 로그 서버를 보니까 북한발 IP가 있.. 더보기
LINUX#2 - DNS(Slave) # tail -30 /var/log/messages // log 를 볼 수 있다. 여기에서 Jul 19 18:37:07 SERVER avahi-daemon[3096]: Received response from host 172.16.7.11 with invalid source port 59860 on interface 'eth0.0' 이런 정보를 찾을 수 있었다. => 방화벽이 설치되어있다는 문제 해결책은?? # iptables -F //방화벽을 풀어준다. Master , Slave 모두 위의 명령어를 이용해서 방화벽을 풀어준다. 그러면 Slave 측에서 /var/named/chroot/var/named/slaves 폴더 안에서 *.hosts , *.rev 파일을 확인 할 수있다. # nslookup ja.. 더보기
[LINUX] 연습문제2 1. 아래와 같은 그룹을 만드시오 (groupadd) 그룹명 gid ------------------- class1 1000 class2 디폴트값 2. 아래와 같은 계정을 만드시오 (useradd / usermod) 계정명 home디렉토리 로그인셀 그룹 comment --------------------------------------------------------------------------------------------- unix1 /home/unix1 /bin/bash unix1 kildong unix2 /var/unix2 /bin/csh unix2,bin unix3 /home/unix3 /bin/bash class1,class2 unix4 /home/unix4 /bin/bash unix4 .. 더보기
[LINUX] 연습문제1 (* 문제에서의 '#' 은 root 의 프롬프트 모양을 뜻합니다) 1. 주기억장치, 보조기억장치, 가상메모리에 대해서 각각 간략히 쓰시오. 2. IDE(EIDE) 디스크와 SCSI 디스크의 특징에 대해서 간략히 쓰시오. 3. 리눅스에 대한 설명중 맞지 않는것을 고르시오 ㄱ. 유닉스를 모델로 하여 개발되었다. ㄴ. 리눅스는 무료로 사용할수 있으며 상용 리눅스는 존재하지 않는다. ㄷ. 커널소스가 공개되어 있다. ㄹ. 리눅스를 위한 C 컴파일러도 무료로 사용할 수 있다. 4. 다음명령의 실행결과를 예상해보고 직접 입력해서 확인하시오. # echo -n 1 ; echo 2 2>/dev/null | echo 3 > test.txt ; cat test.txt 5. 다음은 리눅스 시스템의 기본적인 구성입니다. 빈칸을.. 더보기
안드로이드 Chap2. Hello, Android! Android Application 구성 요소 - Activity - Service - Broadcast Reciever - Content Provider 더보기