SYSTEM/UNIX|LINUX Server 보안

runlevel에 따른 서비스 실행 제어 with chkconfig

마띠(쥔장) 2021. 3. 25. 15:30

runlevel에 따른 서비스 실행 제어 with chkconfig

chkconfig는 부팅 시 자동으로 실행되는 서비스의 시작 여부를 결정할 수 있는 명령어이다. 기본적으로 StandAlone 방식과 xinetd 방식의 서비스를 구분하여 runlevel에 따른 실행 여부를 조회할 수 있다.

예를 들어 'sshd'라는 서비스의 runlevel을 조회해보자. $ chkconfig --list sshd의 출력을 보면, runlevel=2 ~ runlevel=5에서 sshd(OpenSSH의 서버 process)는 부팅 시 자동 실행되는 것을 알 수 있다.

현재 시스템에 접속된 runlevel은 cat /etc/inittab을 통해 확인한다.

현재 runlevel=5 이므로, 시스템 부팅 시 /etc/rc.d/rc5.d가 실행되었을 것이다. $ ll /etc/rc.d/rc5.d/ | grep sshd를 실행하여 S55sshd라는 서비스가 등록되어 있음을 확인할 수 있다. 파일 앞에 S가 붙었으므로 sshd라는 서비스를 실행시키는 파일이다. 즉, sshd 서비스는 부팅 시 자동으로 실행되었을 것이다.

그럼 runlevel=5에서 이 서비스가 자동 실행되지 않게 설정해보자. chkconfig 명령어를 통해 off시킨 후, 다시 list를 보면, 5:off로 설정된 것을 볼 수 있다. /etc/rc5.d 디렉터리 내 파일명은 K25sshd로 바뀌었다. 이는 'S'의 반대로, 서비스를 kill하라는 의미이다.

 

728x90