불필요한 RPC 서비스가 활성화 되어 있는 경우:
- 불필요한 RPC 서비스 비활성화 여부 확인
cat /etc/inetd.conf
- “/etc/xinetd.d" 디렉터리 내 서비스별 파일 비활성화 여부 확인
vi /etc/xinetd.d/[서비스별 파일명]
/etc/inetd.conf 파일은 inetd (인터넷 슈퍼서버)에 대한 설정 파일입니다. 그러나 많은 최신 리눅스 배포판에서는 inetd 대신 xinetd 또는 systemd를 사용하여 서비스를 관리합니다. (현재 rocky 8.8 OS 사용 중)
RPC (Remote Procedure Call) 서비스는 여러 서비스를 포함하며, portmap 또는 rpcbind를 통해 구동됩니다.
- systemd를 사용하는 시스템
systemctl status rpcbind
- 그 외의 rpc 관련 서비스도 확인하려면:
systemctl list-units | grep rpc
- 서비스 직접 확인:
rpcinfo
명령어를 사용하여 로컬 호스트에 실행 중인 RPC 서비스를 확인할 수 있습니다.
이 결과들은 시스템에 rpcbind 서비스 (전에는 portmapper로 알려져 있음)가 활성화되어 있고 실행 중임을 나타냅니다. 이 서비스는 Remote Procedure Call (RPC) 서비스들의 요청을 받아 해당 서비스로의 연결을 돕는 역할을 합니다.
위 systemctl 명령어의 결과에서 여러 rpc 관련 서비스와 타겟들이 로드되고 실행 중임을 볼 수 있습니다. 또한 rpcinfo의 결과에서는 port 111에서 portmapper 서비스가 TCP와 UDP 모두를 사용하여 실행 중임을 확인할 수 있습니다.
만약 이러한 RPC 서비스들이 필요하지 않다면, 시스템의 보안을 강화하기 위해 이러한 서비스들을 중지하고 비활성화하는 것을 권장합니다.
- 서비스를 중지하려면
systemctl stop rpcbind.service
- 서비스를 비활성화하려면
systemctl disable rpcbind.service
- 비활성화 후 다시 상태 확인