[리눅스][스크립트] /etc/hosts 파일 소유자 및 권한 설정

1. 설명

- 리눅스 서버에서 /etc/hosts 파일 소유자 및 권한 설정을 수동 점검하지 않고 스크립트로 작성함.

- 스크립트 결과 파일은 3개임([서버 hostname] 폴더, [서버 hostname]/[서버 hostname].txt, [서버 hostname].tar)

> 예 : hostname이 localhost라면 localhost 폴더, localhost/localhost.txt 파일, localhost.tar 파일


2. 방법

2.1 root 계정으로 <스크립트 내용 시작>, <스크립트 내용 끝> 사이 스크립트 내용을 임의 폴더에 임의 이름으로 파일을 저장함.

예) [root@localhost src]# vi /usr/local/src/a.sh

<스크립트 내용 붙여넣기>

2.2 위 생성 파일에 root 계정으로 실행 권한을 줌.

예) [root@localhost src]# chmod 770 a.sh

2.3 실행

예) [root@localhost src]# ./a.sh

2.4 결과값 보기

예) [root@localhost src]# cat localhost/localhost.txt


3. 참고

- [리눅스] /etc/hosts 파일 소유자 및 권한 설정

-------------------------< 스크립트 내용 시작>-----------------------------------

#!/bin/bash


HOSTNAME=`hostname`


if [ "$UID" != 0 ]

then

  echo "ROOT 계정으로 실행해 주세요."

  exit 126

fi


mkdir $HOSTNAME


### 기본 설정 시작 ###

HOSTS="/etc/hosts"  #### hosts 파일 위치 ####

### 기본 설정 끝 ###


echo "#####################################"  >> $HOSTNAME/$HOSTNAME.txt 2>&1

echo "# HKAND(https://hkand.blogspot.com) #"  >> $HOSTNAME/$HOSTNAME.txt 2>&1

echo "#####################################"  >> $HOSTNAME/$HOSTNAME.txt 2>&1

chmod 600 $HOSTNAME/$HOSTNAME.txt


echo "### 시작 시간 체크 ###"

echo "### 점검 시작 ###"  >> $HOSTNAME/$HOSTNAME.txt 2>&1

        date  >> $HOSTNAME/$HOSTNAME.txt 2>&1

echo "#################"   >> $HOSTNAME/$HOSTNAME.txt 2>&1

echo "### 시작 시간 체크 완료 ###"


echo "### /etc/hosts 파일 소유자 및 권한 설정 체크 ###"

echo "7. [리눅스] /etc/hosts 파일 소유자 및 권한 설정"  >> $HOSTNAME/$HOSTNAME.txt 2>&1

echo "- /etc/hosts 파일 소유자를 root, 권한을 600(rw-------)이하로 설정 권장"  >> $HOSTNAME/$HOSTNAME.txt 2>&1

echo " "  >> $HOSTNAME/$HOSTNAME.txt 2>&1

echo "7.1 /etc/hosts 파일 권한 설정"  >> $HOSTNAME/$HOSTNAME.txt 2>&1

        ls -l $HOSTS  >> $HOSTNAME/$HOSTNAME.txt 2>&1

echo " "  >> $HOSTNAME/$HOSTNAME.txt 2>&1

echo "7.2 /etc/hosts 파일 내용 확인"  >> $HOSTNAME/$HOSTNAME.txt 2>&1

        cat $HOSTS  >> $HOSTNAME/$HOSTNAME.txt 2>&1

echo " "  >> $HOSTNAME/$HOSTNAME.txt 2>&1


echo "### /etc/hosts 파일 소유자 및 권한 설정 체크 완료 ###"

echo "### 점검 완료 ###"

echo "### 점검 완료 ###"        >> $HOSTNAME/$HOSTNAME.txt 2>&1


tar -cf $HOSTNAME.tar $HOSTNAME


exit 0

-------------------------< 스크립트 내용 끝>-----------------------------------


끝.