웹서버를 운여하면 tmp 가 필요합니다. 이 폴더는 누구나 읽고, 쓰고, 실해하게끔 기본으로 설정됩니다. 또한 파티션 없이 folder 로 사용하는 경우도 있으나 꼭 tmp "파티션" 을 생성하여 사용하기를 권장합니다.
80포트 (아파치, 즉 일반 홈페이지 방문시 브라우저에서) 를 이용하여 tmp에 악성. 해킹 스크립을 넣어서 실행 시킬수 있습니다. 서버보안에 치명적일수 있습니다.
## 세팅하는 방법 ##
주의사항: 아래중 빨간색은 변경되는 부분 그리고 초록색은 서버에서 SSH 상태에서 내리는 명령어 입니다.
1) 서버설치시 /tmp 폴더를 약 1GB 정도 할당한다
2) 서버 리눅스 OS 설치후 /etc/fstab 파일을 열어서 아래 빨간색처럼 변경하 준다. 즉, noexec 는 실행을 못하게 하며 nosuid는 루트권한을 금지하며 rw는 읽고 쓰는것만 허용하는 것입니다. 이로서 비록 /tmp에 악성 스크립이 있더라도 실행을 못하게 하는것입니다.
/dev/md3 /tmp ext3 loop,noexec,nosuid,rw 1 2
혹은
tmpfs /dev/shm tmpfs defaults,noexec,nosuid 0 0
LABEL=/tmp /tmp ext3 defaults,noatime,nodev,noexec,nosuid 1 2
3) /var/tmp 폴더를 삭제 합니다.
[root@mbkang ~]# rm -rf /var/tmp
4) /var/tmp 폴더를 생성하여 /tmp 로 연결하여 줍니다. 이로서 /var/tmp 도 보안이 되도록 하는것입니다. 아래는 ln는 링크를 하며 -s 옵션은 심볼릭 링크를 의미하며, /var/tmp를 /tmp 로 연결하라는 의미입니다.
[root@mbkang ~]# ln -s /tmp /var/tmp
/tmp 파티션은 아주 단순한것 같지만, 서버 보안에 있어 매우 중요합니다. 참고가 되었으면 합니다