SYSTEM/UNIX|LINUX Server 보안

    [CentOS 7] GUI로 변경하기

    [CentOS 7] GUI로 변경하기

    환경은 이렇습니다. 1. $ yum update 2. $ yum groupinstall "GNOME Desktop" "Graphical Administration Tools" 3. $ ln -sf /lib/systemd/system/runlevel5.target /etc/systemd/system/default.target 4. $ reboot

    CentOS  7 Console에서 글자 크기 변경하기

    CentOS 7 Console에서 글자 크기 변경하기

    - 일시적 방법: sun16 -> 기본, sun32 -> 2배로 크게 - 영구적 방법: vi /etc/default/grub 파일의 'GRUB_CMDLINE_LINUX= vconsole.font=latarcyrheb-sun32 vga=795' 추가 vga 값은 해상도를 의미한다. 다음 참고

    runlevel에 따른 서비스 실행 제어 with chkconfig

    runlevel에 따른 서비스 실행 제어 with chkconfig

    runlevel에 따른 서비스 실행 제어 with chkconfig chkconfig는 부팅 시 자동으로 실행되는 서비스의 시작 여부를 결정할 수 있는 명령어이다. 기본적으로 StandAlone 방식과 xinetd 방식의 서비스를 구분하여 runlevel에 따른 실행 여부를 조회할 수 있다. 예를 들어 'sshd'라는 서비스의 runlevel을 조회해보자. $ chkconfig --list sshd의 출력을 보면, runlevel=2 ~ runlevel=5에서 sshd(OpenSSH의 서버 process)는 부팅 시 자동 실행되는 것을 알 수 있다. 현재 시스템에 접속된 runlevel은 cat /etc/inittab을 통해 확인한다. 현재 runlevel=5 이므로, 시스템 부팅 시 /etc/rc.d/..

    서비스 동작 방식 전환: StandAlone  -> xinetd(inetd)

    서비스 동작 방식 전환: StandAlone -> xinetd(inetd)

    StandAlone 방식의 서비스인 vsftpd를 xinetd 방식으로 전환해보자. 먼저 /etc/init.d 디렉터리에서 vsftpd 서비스가 StandAlone 방식임을 확인한다. /etc/xinet.d 디렉터리 밑에 vsftpd라는 파일을 생성하고 아래와 같이 작성한다. 이제 기존의 StandAlone 방식에서의 설정 파일인 /etc/vsftpd/vsftpd.conf을 수정한다. 아래 listen=YES 구문을 주석처리 하거나 'NO'로 수정한다. chkconfig에서 vsftpd 데몬을 정지 혹은 삭제한다. chkconfig --del vsftpd 구문을 실행하지 않으면, 아래처럼 runlevel에서만 차단된다.

    Linux Daemon - StandAlone vs. xinetd (inetd)

    Linux Daemon - StandAlone vs. xinetd (inetd)

    리눅스 환경에서의 서비스 운영 방식은 2가지로 분류할 수 있다. (1.1) 서비스 운영 방식 - StandAlone 항시 떠있으면서 서비스하는 방식 (background process) /etc/initd에서 조회 가능 서비스 자체를 사용하지 않아도 메모리, CPU를 점유하고 있음 서비스 요청이 많은 WEB, MAIL 등이 쓰는 방식 서비스 요청이 적음에도 이 방식으로 사용한다면 비효율적 StandAlone 서비스는 데몬을 구동시킬 수 있는 스크립트를 저장하는 /etc/init.d (= /etc/rc.d/init.d) 파일에서 그 목록을 확인할 수 있다. bluetooth, httpd, network, apache 등의 서비스들이 이에 해당한다. 모든 서비스 파일들은 /etc/init.d 디렉터리의 실제..

    [CentOS 6.6] 1. 계정관리 (선택 사항)

    [CentOS 6.6] 1. 계정관리 (선택 사항)

    기술안내서 가이드 < 관련법령·기술안내서 < 자료실 : 한국인터넷진흥원 기술안내서 가이드 www.kisa.or.kr 아래 내용은 CentOS 6.6 버전을 기준으로 작성/실습하였습니다. ▨ 설명 중요도 중에 해당하는 취약점으로, root 계정과 그 이외의 계정이 같은 UID를 가질 경우 비인가자는 root 계정 권한과 동일한 권한으로 시스템에 로그인하여 정보 유출, 파일 변조 등의 행위를 할 수 있습니다. 또한 root와 동일한 UID를 사용하므로 사용자 감사 추적 시에도 어려움이 발생합니다. 따라서 중복되는 UID를 제거/수정 해야 합니다. -UID User IDentification 여러 명의 사용자가 동시에 사용하는 시스템에서 사용자가 자신을 대표하기 위해 쓰는 이름 ▨ 설정 usermod 명령으로..

    [CentOS 6.6] 1. 계정관리 (필수 사항)

    [CentOS 6.6] 1. 계정관리 (필수 사항)

    기술안내서 가이드 < 관련법령·기술안내서 < 자료실 : 한국인터넷진흥원 기술안내서 가이드 www.kisa.or.kr 아래 내용은 CentOS 6.6 버전을 기준으로 작성/실습하였습니다. ▨ 설명 중요도 상에 해당하는 취약점으로, 원격 터미널로 접속할 수 있는 서비스를 차단하여 외부로부터 root 계정으로의 접근을 막아야 합니다. Brute Force Attack이나 Dictionary Attack 등으로 비인가자가 root 계정을 획득할 경우 시스템 계정 정보 유출, 파일/디렉터리 변조 등의 침해사고가 발생할 수 있습니다. - root 계정 여러 사용자가 사용하는 컴퓨터에서 전체적으로 관리할 수 있는 총괄 권한을 가진 유일한 특별 계정 UNIX 시스템의 root는 시스템 관리자인 Super User로서,..

    UNIX 기초 (4) RPC 서비스 종류

    UNIX 기초 (4) RPC 서비스 종류

    ▨ RPC 서비스 RPC = Remote Procedure Call = 원격 프로시저 호출 RPC는 별도의 원격 제어를 위한 코딩없이, 다른 주소 공간에서 함수/프로시저를 실행할 수 있게 하는 기술 RPC를 사용해 프로그래머는 실행 프로그램 속 함수가 로컬에 있든 원격에 있든 동일하게 이용할 수 있다. 원격 프로시저 호출 위키백과, 우리 모두의 백과사전. 원격 프로시저 호출(영어: remote procedure call, 리모트 프로시저 콜, RPC)은 별도의 원격 제어를 위한 코딩 없이 다른 주소 공간에서 함수나 프로시저를 실행할 수 ko.wikipedia.org ▨ RPC 서비스의 종류 rpc.statd : lockd 프로그램을 지원하는 도구. client-server 상태를 모니터링하는 데몬 loc..

    UNIX 기초 (3) 계정 설명, 불필요한 SUID/SGID (LINUX 기준)

    UNIX 기초 (3) 계정 설명, 불필요한 SUID/SGID (LINUX 기준)

    ▨ 계정 설명 1. lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin = 로컬 프린트 서버 2. sync:x:5:0:sync:/sbin:/bin/sync = 원격지 서버 동기화 3. shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown = soft 시스템 종료 4. halt:x:7:0:halt:/sbin:/sbin/halt = 강제 시스템 종료 5. mail:x:8:12:mail:/var/spool/mail:/sbin/nologin = 메일 서비스 계정 6. news:x:9:13:news:/etc/news:/sbin/nologin 7. uucp:x:10:14:uucp:/var/spool/uucp:/sbin/nologin = UNIX 시스템 간 파일 복사 ..

    UNIX 기초 (2) /etc/passwd, /etc/shadow, /etc/group 파일 구조

    UNIX 기초 (2) /etc/passwd, /etc/shadow, /etc/group 파일 구조

    ▧ 1. /etc/passwd 파일 /etc/passwd 파일은 사용자 ID나 Shell 등의 사용자 계정 정보를 저장한다. #cat /etc/passwd 명령어를 통해 /etc/passwd 파일을 조회하면 아래와 같은 구조를 볼 수 있다. mika x 500 500 mika /home/mika /bin/bash 1. 계정명 2. 패스워드 3. UID 4. GID 5. 계정 설명 6. 홈 디렉터리 7. Shell 정보 사용자 이름 = ID 사용자 비밀번호로, 일반적으로 'x' 값을 가진다. 이는 /etc/shadow 파일에 패스워드가 암호화된 형태로 저장되어 있음을 뜻한다. 사용자 UID, 여러 사용자가 사용하는 시스템 내에서 자신을 표현하는 ID 사용자 소속 그룹 GID, 한 사용자가 소속해있는 그룹의..

    UNIX 기초 (1) cat, vi, find 명령어 정리

    UNIX 기초 (1) cat, vi, find 명령어 정리

    ▨ 1. cat 명령어로 파일 내용 확인 cat은 텍스트 파일 내용 출력/쓰기/복사 시 사용되며 주로 텍스트 파일 내용을 표준 출력장치로 출력하여 확인한다. 1. 파일을 열어 내용 출력 cat [파일경로/파일명] 2. 파일 생성/덮어쓰기하여 내용 입력 같은 이름의 파일이 있는 경우 파일을 덮어쓰고 새로 내용을 입력한다. 같은 이름의 파일이 없는 경우 파일을 새로 만들고 내용을 입력한다. cat > [파일경로/파일명] 3. 파일 생성/이어쓰기하여 내용 입력 같은 이름의 파일이 있는 경우 파일을 기존 파일 내용 밑에 이어 내용을 입력한다. 같은 이름의 파일이 없는 경우 파일을 새로 만들고 내용을 입력한다. cat >> [파일경로/파일명] 4. 덧붙여 사용할 수 있는 명령어 | more 많은 내용 출력 시 사..

    UNIX Server 보안 List

    UNIX Server 보안 List

    기술안내서 가이드 < 관련법령·기술안내서 < 자료실 : 한국인터넷진흥원 (kisa.or.kr) 기술안내서 가이드 < 관련법령·기술안내서 < 자료실 : 한국인터넷진흥원 기술안내서 가이드 www.kisa.or.kr 1. 계정 관리 1.1 root 계정 원격 접속 제한 1.2 패스워드 복잡성 설정 1.3 계정 잠금 임계값 설정 1.4 패스워드 파일 보호 1.5 root 이외의 UID가 '0' 금지 1.6 root 계정 su 제한 1.7 패스워드 최소 길이 설정 1.8 패스워드 최대 사용기간 설정 1.9 패스워드 최소 사용기간 설정 1.10 불필요한 계정 제거 1.11 관리자 그룹에 최소한의 계정 포함 1.12 계정이 존재하지 않는 GID 금지 1.13 동일한 UID 금지 1.14 사용자 shell 점검 1.1..