Linux ETC

/tmp 디렉토리 보안 설정하기

2015.09.17 02:10

호스트웨이 조회 수:9736

웹서버 운영시 임시파일이 저장되는 디렉토리인 /tmp가 필요합니다.

/tmp 디렉토리는 기본값으로 아무나 읽고, 쓰고, 실행하도록 설정 되어 있습니다.

그렇기 때문에 웹서비스를 통해 /tmp 디렉토리에 악성, 해킹 스크립트를 넣어서 실행 시킬 수 있어, 서버 보안에 치명적일 수 있습니다.


다음과 같이 fstab파일의 /tmp 디렉토리에 권한 값을 수정하여 줍니다.

(*fstab란, 리눅스 부팅시 각 파티션으로 마운트하는 정보 및 권한 등에 대한 설정 정보가 들어있는 파일입니다.)

#주의 /tmp 디렉토리를 사용하는 프로세스가 구동 중이라면, 관련된 프로세스를 중단한 상태에서 작업을 진행하도록 합니다. (nginx, php, mysql등...)


[root@yclee ~]# vi /etc/fstab

 fstab.png

/tmp설정 중 defaults로 되어있는 부분에 noexec,nodev,nosuid를 추가한 뒤 저장합니다.

*noexec :  사용자가 실행 파일의 실행을 할수없도록 설정합니다.

*nodev : 특별한 장치나 문자 디바이스에 대한 접근 불가하도록 설정합니다.

*nosuid : SUID/SGID 접근이 불가하도록 설정합니다.


/var/tmp 심볼릭링크 설정

/tmp  디렉토리 이외에도 /var/tmp 디렉토리가 존재기때문에, 서로 동일하도록 심볼릭 링크를 설정해줍니다.


[root@yclee ~]# rm -rf /var/tmp

/var/tmp 디렉토리를 삭제합니다.


[root@yclee ~]# ln -s /tmp /var/tmp

/var/tmp 접속시 /tmp로 연결 되도록 링크 설정합니다.


[root@yclee ~]# reboot

fstab 설정을 변경한 뒤엔 서버를 재부팅해야 해당 설정이 적용됩니다.