스왑 파일 만들기

FAQ 2005/07/04 12:33
스왑 파티션으로 스왑용량이 모자라 파일로 스왑만드는 방법
(오라클 깔때 거의 쓰이죠...)


# dd if=/dev/zero of=/swap1 bs=1024 count=204800
(1024 바이트의 크기로 204800 블럭을 만드는거죠 즉 200M ,
만들고 싶은 크기x1024 해서 204800 대신 적어주세요.)
# mkswqp /swap1 204800 (스왑 파일 생성)
# sync; sync (확실하게 하기위해)
# swapon /swap1 ( 스왑 파일 활성화 )

free 명령으로 확인해 보세요.

해제할때는 swapoff /swap1 하시면 되겠죠.

부팅시 마다 스왑 파일을 활성화 시킬려면 /etc/rc.d/rc.local 파일
끝에 swapon /swap1 이라고 추가하면 됩니다
2005/07/04 12:33 2005/07/04 12:33
설치시 유의점

----파티션에 유의
----설치유형(필요한 서비스만 구성)
----Xwindow설치하지 않을것-보안에 무지 약함
----컴파일러 : 서버셋팅후 제거
----게임은 절대로 안됨

/etc/fstab파일에 옵션을 주어서 파티션마다 서비스 제한 가능
lilo보안-single user mode 진입을 제한시킨다.
그리고 파라미터를 이용한 부팅을 제한
그후 bios의 암호를 걸어주고, cd-rom이나 플로피를 이용한 부팅을 제한시킨다.
구체적인 설정.
--/sbin/lilo.conf파일내용중
restricted
password=ytwmail 이두줄을 추가한다.
첫째줄이 있으면 파라미터 이용시만 암호 물어보게한다.
즉 linux s 로 부팅시 암호를 물어본다.
둘째줄은 부팅시 lilo사용시마다 암호를 물어본다.
(보통 restricted와 함께 사용한다.)
그후에 chmod 600 /etc/lilo.conf 설정하여 일반 사용자가 보지 못하게 한다.
그리고 /sbin/lilo실행하여 변경내용 적용시킨다.
마지막으로
chattr +i /etc/lilo.conf 이 명령으로 실수로 파일이 지워지거나 변경되지 못하게 한다.

--/etc/inittab의 설정 변경
#system initialization 아래에
~~:S:wait:/sbin/sulogin을 추가한다.
ca:ctrlatldel::shutdown -t 3 now부분을 커맨드 처리한다.
-->이부분은 안해봤음
init q로 수정된 것을 적용 시킨다.
chmod 600 /etc/inittab적용으로 다른 사용자 보기 권한 없앤다.

-------> root 패스워드 넣어야 부팅이 된다.

****************** 팀 ******************
/sbin/init 6 ----------->리부팅, 사용자에게 메세지 없이
shutdown ------------>사용자들에게 경고 메세지 보낸다.
/etc/securetty
-root계정으로 로그인 할수 있는 터미널을 제한한다.
-위의 파일 내용중 tty를 하나만 남긴다.즉 tty1만
umask조정
-/etc/profile을 수정하여 umask를 027로 조정한다.
/etc/issue.net
위 파일 내용에 서버의 OS관련 내용은 적지 않는다.
/etc/rc.d/init.d
위 디렉토리 및 스크립트 퍼미션을 700으로..
/etc/cron.daily
/etc/cron.monthly
/etc/cron.weekly
/etc/cron.hourly
위 파일들의 퍼미션을 750으로 수정
/etc/fstab\r\n위 파일을 열어
/tmp noexec, nosuid, nodev
/var noexec, nosuid, nodev
/home nosuid,nodev
/dev/pts mode=620이라야 한다.
수정후 mount -o remount /tmp --->이런 식으로 변경된 내용 적용
즉, 파티션 마다 실행 가능 영역이 다르게 만든다.

#######################
PING에 응답 안하기
#######################

우리는 가끔 인터넷을 하면서 네트워크에 연결된 서버가 제대로 작동하는지의 이상
유무를 확인하기 위해 PING 명령을 사용하곤 합니다.
원격지에서 서버로의 PING을 하여도 응답하지 않으려면 아래와 같이 명령하시면 됩니다.
# echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all
PING 에 대한 명령에 응답하지 않습니다.
# echo 0 > /proc/sys/net/ipv4/icmp_echo_ignore_all
PING 에 대한 명령에 응답을 합니다.
리눅스 시스템을 부팅할때 마다 자동으로 거절하려면 아래와 같이 하세요.
vi /etc/rc.d/rc.local 파일의 제일 하단에 위의 내용을 적어 주시면 됩니다.

####################
TCP Wrapper
####################

hosts.allow--------------
in.telnetd : 허용하는 아이피
in.ftpd : 허용하는 아이피를 적어주면 됩니다

hosts.deny---------------
ALL : ALL

모두 설정 후에는
/etc/rc.d/init.d/xinetd restart
2005/07/04 12:32 2005/07/04 12:32
###################################
/etc/rc.d/init.d/디렉 내의 데몬..
###################################
anacron------>cron 데몬
apmd--------->노트북을 위해
arpwatch----->보안툴 맥어드레스가 스푸핑 되는지 체크
at----------->at데몬
functions---->연산 함수
gated-------->라우터로 사용하기 위해
gpm---------->텍스트 환경에서 마우스 사용위해
httpd-------->리소스 많이 차지 한다.
identd------->특정 프로세서가 누구의 권한으로 되는지 체크
innd--------->뉴스 서버
ipchains----->커널 의 준 방화벽 기능
irda--------->적외선 관련 장비
kudzu-------->하드웨어의 설정을 체크 설치시만 필요.
ldap--------->디렉토리 서비스
lpd---------->프린트
netfs-------->파일 시스템
nfs---------->보안상 취약
pcmcia------->노트북에 쓰인다.
portmap------>rpc서비스 없으면 제거, 무포토로 접속했을 때 빈 포트를 자동으로 찾아 준다.
random------->난수 발생시 시드 값 필요한 프로그램 지원
rarpd-------->클라이언트 서버환경만 필요
routed, rstatd, rusersd, rwalld, rwhod----->필요없음
xinetd-------->inetd보다 보안적으로 강화된 데몬
inetd--------->이전 버전에 사용 됐음

이외에 서버의 버전에 따라 다른 데몬이 있을 수도 있습니다.

#############
일반데몬제거
#############

사용 되고 있는 서비스 확인
netstat -atu | more
lsof -i | more ---------->넷트웍 관련 서비스 알아봄
lsof는 프로세서를 추적하는 것임
nps -aux로 떠있는 프로세서 확인
그리고
lsof -i :printer 이런식으로도 확인합니다.(포트를 바인딩하고 있는 데몬을 확인)
그후
/etc/rc.d/init.d/에서데몬을 stop시킨다.
./lpd stop --> 이와 같은 식으로 stop 시키면 됩니다.

정지 시켜야할 데몬은 위쪽에서 보고 확인 합니다. 서버의 기능에 대한 데몬을 제외 하고는 모두
정지 시키는 것이 좋습니다.

(rpc.state, portmap, lpd(printer), kudzu, r이 들어가는 데몬,apmd, netfs, rwalld,
rwhod, ruserd, snmp, kdcrotate)

chkconfig --list이렇게 하면 부팅시 시작되는 데몬을 볼 수 있습니다.

ex) lpd를 부팅시 시작 되지 않게 하기 위해서
chkconfig --list lpd -------->lpd만 상태확인
chkconfig --level 2345 lpd off -------->2345로 부팅시 데몬 안뜨게 함.
chkconfig --list lpd 이렇게 ektl 확인해 봅니다.
다른 데몬들도 위의 예제처럼 설정 하여 사용하시면 됩니다.

간단하게 ntsysv로도 설정 가능 합니다.

####################
rpm자체를 삭제하는법
####################

1. whereis lpd 이렇게 설치된 장소를 찾습니다.
2. rpm -qa /usr/sbin/lpd
---->설치된 장소의 rpm이름을 확인합니다.
3. rpm -e --nodeps LPRng
---->rpm삭제

##################################################
슈퍼데몬(inetd.xinetd)을 이용하는 서비스확인, 제거
##################################################
ps -aux | grep xinetd

------->pid 확인방법 1
cat /var/run/xinetd.pid

------->확인방법 2
lsof -p 518

----->서비스되고 있는 데몬 확인
vi /etc/xinetd.conf

/etc/xinetd/ ------->이 디렉토리 안에 실행 데몬이 있습니다.
이 데몬들중 필요없는 데몬은 수정합니다.

ex)vi /etc/xinetd.d/finger
이파일의 disable = yes 로 수정 합니다.

그후 /etc/rc.d/init.d/xinetd restart
2005/07/04 12:32 2005/07/04 12:32