2024/10 23

[2차 단답식] 리눅스 시스템 보안을 강화하기 위해 커널 매개 변수(kernel parameter) 설정

문제 09 다음은 시스템 보안 강화를 위해 커널 매개 변수(parameter)를 제어하는 과정이다. 작업 사항에 맞게 빈칸에 알맞은 내용을 적으시오. 작업 사항 1. ping 명령어에 응답하지 않도록 커널 매개 변수를 변경한다. # ( ① ) ( ② ) 2. 변경 사항이 재부팅 시에도 적용되도록 관련 파일에 등록한다. # ( ③ ) 조건 ① 관련 명령어만 기재한다. (echo 명령 제외) ② 명령어의 옵션이나 명령어와 옵션과 관련된 인자값 등 해당 작업을 수행할 수 있는 내용을 기입한다. ③ 관련 파일명을 절대경로로 기입한다. 답안 1. sysctl 2. -w net.ipv4.icmp_echo_ignore_all=1 3. /etc/sysctl.conf --- 문제 해결을 위한 설명1. 커널 매개 변수 변..

[2차 단답식] 로그를 확인하는 명령어

문제 08다음은 명령어를 이용하여 로그를 확인하는 과정이다. 조건에 알맞은 명령어를 적으시오.조건최근 3일 동안 로그인 한 사용자들의 마지막 로그인 기록을 확인한다.시스템이 재부팅한 기록을 확인한다.ihduser가 로그인한 기록만을 확인한다.kaiuser가 로그인에 실패한 기록만을 확인한다.문제 해결을 위한 명령어 작성1. 최근 3일 동안 로그인한 사용자들의 마지막 로그인 기록 확인해설: lastlog 명령어는 모든 사용자의 마지막 로그인 정보를 보여주며, -t 옵션은 특정 기간을 지정합니다. 여기서 -t 3은 최근 3일 이내의 마지막 로그인 기록을 조회합니다.lastlog -t 32. 시스템이 재부팅한 기록 확인해설: last 명령어와 reboot 키워드를 사용하여 시스템 재부팅 기록을 확인할 수 있습..

[2차 단답식] 다음은 시스템 로그 설정을 하는 과정

문제 07다음은 시스템 로그 설정을 하는 과정이다. 조건에 맞게 빈칸에 알맞은 내용을 작성하시오.# vi ( )( )( )조건관련 파일명을 절대경로로 기재한다.ssh와 같은 인증을 필요로 하는 프로그램 실행 시 발생한 메시지는 /var/log/sshlog에 기록하며, info 수준의 로그는 제외한다.모든 facility가 발생하는 crit 수준의 메시지는 /var/log/critical 파일에 기록한다.위 조건과 관련된 내용은 한 줄만 요약하여 기록한다.문제 해결 방법/etc/rsyslog.conf 파일을 수정하여 아래와 같은 설정을 추가한다.각 조건에 맞는 로그 경로와 설정을 적용하여 로그 관리가 되도록 설정한다.설정 완료 후 rsyslog 서비스를 재시작하여 변..

셸의 종류

셸의 종류리눅스와 유닉스 계열 운영체제에서 다양한 종류의 셸(Shell)이 제공되며, 각각의 셸은 고유한 기능과 특징을 가지고 있다. 셸은 사용자가 운영체제와 상호작용하는 인터페이스 역할을 하며, 명령어 해석, 스크립트 실행, 사용자 환경 관리 등의 기능을 제공한다. 다음은 대표적인 셸의 종류와 그 특징을 설명한 것이다.1. Bourne Shell (sh)개발자: Stephen Bourne특징: 초기 유닉스 시스템에서 기본 셸로 사용되었으며, 현대 셸의 기초가 되는 셸이다.장점: 단순하고 가볍다. POSIX 표준을 따르기 때문에 높은 호환성을 제공하며, 셸 스크립트의 기본 표준으로 많이 사용된다.단점: 최신 셸에 비해 기능이 부족하며, 스크립트 작성 시 유연성이 떨어진다.사용처: 주로 스크립트의 호환성 ..

대화형 조작(Interactive Use)과 셸 스크립트(Shell Script)

대화형 조작(Interactive Use)과 셸 스크립트(Shell Script)대화형 조작(Interactive Use)과 셸 스크립트(Shell Script)는 셸을 사용하는 두 가지 주요 방식으로, 각기 다른 목적과 동작 방식을 갖는다. 두 개념의 차이점과 각각의 특징을 정리하면 다음과 같다.1. 대화형 조작 (Interactive Use)대화형 조작은 사용자가 터미널에 명령어를 직접 입력하고, 셸이 즉각적으로 그 명령을 실행하는 방식이다. 이는 실시간으로 셸과 상호작용하는 방식으로, 사용자가 시스템을 조작하거나 관리할 때 주로 사용된다.특징:즉시 명령 실행: 사용자는 명령어를 입력하고, 결과를 바로 확인할 수 있다.실시간 상호작용: 각 명령어 실행 후 그 결과에 따라 다음 명령을 결정하는 식의 상..

로그인 셸을 보려면

로그인 셸을 보려면로그인 셸로 접근하려면 터미널에서 직접 로그인을 시도하거나, 셸을 로그인 셸로 실행해야 합니다. 로그인 셸을 확인하는 방법은 아래와 같습니다.1. 로그아웃 후 다시 로그인일반적으로 로그인 셸은 사용자가 시스템에 로그인할 때 실행되기 때문에, 현재 비로그인 셸 상태라면 다음 방법으로 로그인 셸을 사용할 수 있습니다.콘솔로 로그인: 현재 GUI 터미널에서 로그아웃한 후, 로그인 화면에서 새롭게 로그인할 때 자동으로 로그인 셸이 실행됩니다.TTY(가상 콘솔) 로그인: Ctrl + Alt + F1부터 Ctrl + Alt + F6까지의 키를 사용하여 TTY(가상 콘솔)로 이동한 후, 텍스트 기반 콘솔에서 사용자 로그인 시 로그인 셸이 실행됩니다.2. 명령어를 통해 로그인 셸로 변경현재 터미널에서..

로그인 셸과 비로그인 셸

로그인 셸과 비로그인 셸리눅스에서 로그인 셸(Login Shell)이란 사용자가 시스템에 로그인할 때 처음으로 실행되는 셸을 의미한다. 이는 사용자 세션을 시작하는 셸로, 보통 시스템에 처음 접속할 때 환경 설정 파일을 로드하고 사용자 환경을 초기화하는 역할을 한다. 로그인 셸은 사용자 인증 후 시작되며, 시스템의 상태에 따라 여러 초기화 작업을 수행한다.로그인 셸의 특징환경 설정 파일 로드: 로그인 셸은 일반 셸과 달리 특정 환경 설정 파일들을 우선적으로 로드한다. 이 파일들은 사용자별 환경 설정, 시스템 전역 설정, 경로 설정 등을 정의한다. 주로 사용되는 설정 파일은 다음과 같다:/etc/profile: 시스템 전체에 적용되는 환경 설정 파일로, 모든 사용자에게 공통적으로 적용된다.~/.bash_p..

다른 운영체제의 커널과 셸이 관계, Windows와 macOS

다른 운영체제의 커널과 셸이 관계Windows와 macOS도 리눅스와 마찬가지로 커널과 셸이 분리된 구조를 가지고 있지만, 셸의 구현 방식이나 커널 구조에는 차이가 있다. 각 운영체제에서 커널과 셸이 어떻게 구성되어 있는지 살펴보면 다음과 같다.1. Windows에서의 커널과 셸Windows 운영체제는 리눅스와 달리 기본적으로 그래픽 사용자 인터페이스(GUI)를 중심으로 설계되어 있다. 하지만 Windows 역시 커널과 셸의 개념이 분리되어 있으며, 이 둘이 각각 다른 역할을 수행한다.Windows 커널Windows의 커널은 Windows NT 커널이라고 불린다. Windows NT 커널은 다음과 같은 역할을 수행한다:하드웨어 자원 관리: CPU, 메모리, 네트워크 장치 등 시스템 자원을 관리한다.프로세..

커널과 셸은 왜 나누었을까?

커널과 셸은 왜 나누었을까?커널(Kernel)과 셸(Shell)이 나뉘어 있을 때 생기는 주요 장점들은 다음과 같다. 이러한 분리로 인해 시스템 안정성, 유연성, 보안, 그리고 성능이 향상된다.1. 시스템 안정성커널과 셸의 분리는 시스템 안정성 측면에서 큰 장점을 제공한다.커널 보호: 커널은 시스템의 핵심 부분으로, 시스템의 안정성과 성능을 보장하는 데 매우 중요한 역할을 한다. 셸이 커널과 분리되어 있으면, 셸에서 오류가 발생하더라도 커널은 그 영향을 받지 않으므로 시스템 전체가 중단되지 않는다. 이로 인해 운영체제는 더 안정적으로 동작할 수 있다.프로세스 격리: 셸은 사용자 명령을 실행하는 프로세스를 관리하지만, 이 프로세스들은 커널에서 독립적으로 실행된다. 커널이 이러한 프로세스들을 격리하고, 각각..

리눅스 커널과 하드웨어의 관계

리눅스 커널과 하드웨어의 관계리눅스 커널(Linux Kernel)은 운영 체제의 핵심 부분으로, 하드웨어와 소프트웨어 간의 중개자 역할을 수행합니다. 사용자가 애플리케이션이나 셸을 통해 요청한 작업이 하드웨어에서 실행될 수 있도록 커널이 중간에서 이를 관리하고 제어합니다. 커널은 하드웨어에 직접 접근하지 않고, 장치 드라이버(Device Driver)와 시스템 호출(System Call)을 통해 하드웨어와 소통합니다.1. 장치 드라이버(Device Driver)장치 드라이버는 커널과 하드웨어 간의 상호작용을 가능하게 하는 소프트웨어 모듈입니다. 각각의 하드웨어 장치는 고유한 특성을 가지고 있으며, 장치 드라이버는 이러한 장치의 특성을 커널이 이해할 수 있는 방식으로 추상화하여 전달합니다.장치 드라이버 역..