IT2013. 9. 10. 22:28
반응형
웹서버를 운영하면 /tmp 가 필요하다. 이 디렉토리는 누구나 읽고, 쓰고, 실행하게끔 기본으로 설정되며 또한 파티션 없이 사용하는 경우도 있으나 꼭 tmp "파티션" 을 생성하여 사용하기를 권장한다.

80포트 (아파치, 즉 일반 홈페이지 방문시 브라우저에서) 를 이용하여 /tmp에 악성. 해킹 스크립을 넣어서 실행 시킬수 있으며 서버보안에 치명적일수 있다.

※ 주의 
서버를 처음 설치시 작업을 진행하는 것이 좋다.
이미 구동중인 서버라면 /tmp 를 사용하는 모든 프로세스를 멈추고 진행한다. (MySQL, Apache, Plesk, Postgers, SpamAssain, etc)

아래 명령어를 이용하여 현재 파티션이 /tmp 파티션을 분리하여 설치했는지 아닌지를 살펴본다. 

# df -h


/tmp 를 사용하는 모든 프로세스를 종료후에 /tmp의 백업과 /etc/fstab의 백업을 만든다.

# cp -Rp /tmp /tmp-backup

# cp /etc/fstab /etc/fstab.backup

이 경우 간단히 /etc/fstab 파일의 /tmp 파티션에 nodev,noexec, nosuid를 추가하면 된다.

# vi /etc/fstab
UUID=....    /tmp    ext4    defaults,nodev,nosuid,noexec    1  2

파티션을 다시 마운트 하도록 하자
# mount -o remount /tmp

이 경우에는 새로운 /tmp 파티션을 원하는 사이즈로 생성하는 것이 좋다.(나는 10Gb)


1) 새로운 파티션 생성과 포맷
# cd /var
# dd if=/dev/zero of=tmpmount bs=1 count=0 seek=10G
# mkfs.ext4 /var/tmpmount

위의 마지막 명령에 의해 질의문이 뜰수 있는데 y 를 선택하도록 한다.

2) /etc/fstab 에 내용 추가
# echo "/var/tmpmount /tmp ext4 loop,rw,noexec,nosuid,nodev 0 0" >> /etc/fstab

3) /tmp 파티션 마운트
# mount -o loop,rw,noexec,nosuid,nodev /var/tmpmount /tmp

4) 소유권과 사용권한 부여
# chmod 0777 /tmp
# chown root.root /tmp

위의 /tmp 설정들이 문제없이 진행되었다면 아래의 설정을 따라한다.


1) /tmp 복구와 백업 삭제

# cp -Rp /tmp-backup/* /tmp/

# rm -rf /tmp-backup


2) /var/tmp 삭제와 심볼릭 링크 걸기

# rm -rf /var/tmp/

# ln -s /tmp/ /var/tmp


3) 재부팅

# reboot


4) 파티션 확인

# df -h 

반응형

'IT' 카테고리의 다른 글

net use /delete  (0) 2013.09.10
yum 간단사용법  (0) 2013.09.10
ssh 설정  (0) 2013.09.10
/etc/resolv.con  (0) 2013.09.10
CentOS 네트웍 설정  (0) 2013.09.10
Posted by Dream Come True