본문 바로가기

Linux39

리눅스 배포판 Knoppix - 크노픽스는 리눅스 전무가 Klaus Knopper가 만들었으며, 컴퓨터의 전원을 킨 후 바로 부팅하여 사용할 수 있는 라이브 디스크형 배포판이다. 소프트웨어들이 디스크에 압축된 상태로 있다가, 실행 시 램 디스크에 압축이풀린다. - 오픈 소스 - 패키지 관리자 dpkg BackTrack - 백트랙은정보 보안을 테스트하기 위한 오픈 소스 리눅스 배포판이다. - 백트랙 안에는 해킹과 관련된 도구와 설명서가 들어있다. 현재는 지원이 종료되었으며, 후속 버전인 칼리 리눅스로 이어진다. - Mati Aharoni, Emanuele Gentili 등이 만들었다. Kali Linux - 칼리 리눅스는 Offensive Security가 개발한 운영체제이다. 백트랙처럼 수많은 해킹도구와 설명서들이 존.. 2021. 8. 2.
시스템 로그 관리 로그 파일의 종류를 먼저 정리하자. default - /var/log/messages : 리눅스 시스템의 전반적인 메시지를 저장한다. - /var/log/dmesg : 리눅스가 부팅될 때 출력되는 메세지를 저장한다. - /var/log/secure : 사용자들의 원격 접속 정보들을 저장한다. - /var/log 경로에는 수많은 로그 파일들이 존재한다. 실제 어떤 로그를 어떤 파일에 저장하고, 로그의 세부 레벨까지 지정할 수 있는 설정 파일은 /etc/rsyslog.conf이다. /etc/rsyslog.conf 파일 구성은 facility.priority(;facility.priority) action 형식으로 지정된다. facility의 종류 * 모든 메시지 auth 사용자 인증 관련 메시지 authpr.. 2021. 8. 1.
rpm -options rpm 명령어는 레드햇 기반 리눅스에서 패키지 관리를 지원하는 명령어이다. rpm의 설치 및 업데이트, 삭제 옵션 rpm -i : 동일한 패키지가 설치되어 있지 않은 경우 패키지를 새로 설치한다. rpm -h : 설치 혹은 업그레이드 진행 상황을 #문자로 표시한다. rpm -U : 패키지를 업그레이드 한다. 기존에 설치된 패키지가 없다면, 새로 설치한다. rpm --force : 기존에 패키지가 설치되었어도 강제로 설치한다. rpm -e : 패키지를 삭제한다. rpm --nodeps : 패키지 설치 업데이트, 삭제 시 의존성 검사를 하지 않는다. rpm --test : 실제 작업을 수행하지 않으며, 문제점만을 검사한다. 질의 옵션 rpm -q : 질의를 위해 기본적으로 사용하는 옵션으로, 이름, 버전, .. 2021. 7. 30.
사용자 패스워드 관리 정책 리눅스에서 사용자의 패스워드 관리는 기본적으로 /etc/passwd 파일과 암호화된 파일인 /etc/shadow파일에서 관리를 한다. /etc/passwd 파일은 기본 사용자 또한 해당 파일을 읽을 수 있지만 /etc/shadow 파일은 root계정만이 읽을 수 있는 permission이 존재한다. 보안상의 이유로 /etc/passwd파일을 숨기고 /etc/shadow파일만을 가지고 사용자 패스워드를 관리하기 위해선 pwconv명령어를 사용하여, /etc/passwd파일을 사용하지 않을 수 있다. 반대로 pwunconv 명령어를 사용하면 /etc/shadow파일을 사용하지 않는다는 설정이다. 즉/etc/shadow를 사용하는 정책에서 /etc/passwd 사용 정책으로 변경하는 명령어 이다. /etc/p.. 2021. 7. 30.
리눅스 프록시 서버 SQUID 프록시 간단 개념 프록시 사용의 목적 리눅스 프록시 서버 SQUID SQUID 서버의 설정 프록시 (Proxy) 간단 개념 프록시는 클라이언트와 서버 사이에 위치하여, 요청과 응답 과정에서 데이터를 중계하는 역할을 담당합니다. 프록시 사용의 목적 보통 서버의 데이터를 캐시 하여 인터넷 전송 속도를 빠르게 하기 위해 사용하며, 서버의 가용성 향상을 위한 부하분산 (Load Balancing)에도 사용할 수 있습니다. - 응답 속도 향상 : 클라이언트의 네트워크 위치와 가까운 곳에 프록시 서버를 구성해 놓고, 자주 사용하는 서버의 데이터를 캐싱하여 빠른 응답속도로 클라이언트에게 응답할 수 있습니다. - 서버의 부하 분산 : 이것은 대용량 서비스에 해당하는 경우일 수 있습니다. 다수의 서버를 구성한 경우 프록.. 2021. 7. 10.
리눅스 커널 리눅스 커널 개요 버전 관리 및 배포 커널 다운로드 및 컴파일 커널 환경 설정 리눅스 커널 개요 - 리눅스 커널은 유닉스 운영체제를 바탕으로 리눅스 토발즈가 개발하고, GNU GPL v2 라이선스 하에 공개된 오픈소스 프로젝트이다. 많은 컨트리뷰터가 존재하며 현재에도 활발하게 개발되고 있다. - 리눅스 커널은 일반적인 기능을 커널과 동일한 메모리에 적재, 실행하는 기법인 모놀리식 커널이며, 현대 운영체제가 가져야 할 특징인 가상 메모리, 공유 라이브러리, 메모리 관리, 프로세스 관리 등을 수행한다. 버전 관리 및 배포 - https://www.kernel.org/ The Linux Kernel Archives www.kernel.org uname -r // 5.12.14 명령어를 통해 현재 커널 버전을 .. 2021. 7. 4.
크론(cron) cron 개요 - 크론은 미리 정한 시간에 명령어, 프로그램, 작업 등을 실행할 수 있는 서비스이다. at 명령어와 헷갈릴 수 있지만 at 명령어는 1회만 예약 시간에 작업을 실행할 수 있지만 크론 서비스는 매일, 매주, 매월 등 반복적으로 실행할 수 있기 때문에 실무에서도 자주 사용되고 있다. 크론 서비스는 현 시각 기준 작업을 실행해야 하는 작업이 있는지 확인하고, 작업이 있다면 이를 실행하는 크론 데몬(crond)과 예약 작업 정보가 담겨있는 설정 파일로 구성된다. 크론 데몬은 시스템 전역 사용 목적을 위한 /etc/crontab 시스템 유틸리티 등 개별 패키지에 의한 작업 예약을 위한 /etc/crond 개발 사용자를 위한 /var/spool/cron 파일을 감시한다. 매시간, 매일, 매주, 매달.. 2021. 7. 3.
프로세스 관리 프로세스 관리 1. ps - ps 명령어는 시스템에서 실행 중인 프로세스에 관한 정보를 보여준다. 프로세스의 정보는 PID를 중심으로 옵션에 따라 상세 정도를 정한다. /proc 디렉터리 이하의 프로세스와 연관된 가상 파일 시스템의 내용을 토대로 프로세스 정보를 출력하는 것이다. 옵션을 사용할 때 "-"를 사용하지 않는 UNIX 스타일과 "-"를 사용하는 BSD스타일 "--"를 사용하는 GNU 스타일이 존재한다. 이 옵션 "-"유무에 따라 역할이 달라지기 때문에 유의해서 사용해야 한다. a unix스타일로 ps 명령어는 기본적으로 현재 사용자 프로세스만 출력하는데, 해당 옵션사용시 모든 사용자가 소유한 프로세스를 모두 출력한다. x unix스타일로 ps 명령어는 기본으로 터미널과 연관된 프로세스만 출력하.. 2021. 7. 3.
/etc/profile 해당 profile은 유닉스 운영체제에서 로그인을 위한 환경설정을 저장한다. 시스템 설정 파일 디렉터리(/etc) 리눅스 시스템에서 가장 중요한 디렉터리라고 할 수 있다. 이 디렉터리에는 시스템의 중요한 환경 설정 파일이 있다. 메일이나 웹 서버와 같은 서버 프로그램의 설정 파일이나 시스템의 초기화 스크립트가 위치한다. 또 사용자 계정 정보를 가지는 passwd파일, 파일 시스템 정보를 가지는 fstab파일 등도 위치한다. /etc/profile은 모든 계정에 공통적으로 적용되며. profile은 해당 로그인 계정에서 사용하는 환경설정을 저장한다. 만약 root로 로그인했다면 /etc/profile을 읽어 드린다음 루트 홈 디렉터리 아래 있는 root.profile을 읽어 들인다. 다음 명령은 /etc/.. 2021. 2. 26.
Firewall 특정 사용자만 private서버에 접근해야 할 필요가 있을 수 있습니다. 여러 가지 방법 중 방화벽으로 특정 ip 외는 모두 막아버리는 간단한 방법이 존재합니다. Firewall을 설치하고 설정하는 방법입니다. 전 설치가 안되어 있으니 설치하겠습니다. 기본적으로 firewall을 설치하고 실행하면 기본적으로 모든 포트를 막습니다. 따라서 설치 후 열어줄 포트는 열어주어야 합니다. 엄청난 의존성이 있네요. 서비스 방화벽 추가/해제 하기 firewall-cmd --permanent --add-service=서비스이름 firewall-cmd --permanent --remove-service=서비스이름 포트로 방화벽 해제하기 sudo firewall-cmd --permanent --add-port=80/tcp.. 2021. 2. 22.