/etc/passwd에 나열된 모든 사용자에 대해 쉘 액세스를 비활성화하는 것이 안전합니까?

/etc/passwd에 나열된 모든 사용자에 대해 쉘 액세스를 비활성화하는 것이 안전합니까?

방금 Ubuntu에서 사용자의 쉘 ​​액세스를 비활성화하는 방법을 읽었습니다.이 기사에서보안상의 이유로. 특정 /etc/passwd사용자 root:x:0:0한 명을 제외한 모든 사용자의 셸 액세스를 비활성화해도 안전합니까 tom:x:1000:1000?

예를 들어, OS 설치와 함께 제공되는 기본 사용자(예: daemon, bin, sys, sync, games, man, lp, mail및 여기에 나열되지 않은 기타 사용자)에 대해 셸을 비활성화하면 문제가 발생할 수 있습니까 news?uucp

답변1

이를 요구하는 프로그램이 있을 수 있으므로 안전한지 여부는 알 수 없지만 필요하지 않다는 것은 알고 있습니다. 이러한 사용자는 이미 비밀번호 없이 로그인 액세스가 비활성화되어 있으므로 셸을 변경할 필요가 없습니다.

답변2

로그인 쉘을 언급하고있는 것 같습니다. 필요하지 않은 곳에서는 비활성화되었으며 다음과 같은 모습을 볼 수 있습니다 /usr/sbin/nologin./bin/false

/bin/bash루트만이 시스템에 들어가기 위해 스스로 만든 쉘이나 다른 사용자 계정을 가지고 있습니다 .

답변3

이유는 간단합니다.

, , , , , , , , , , , , 과 같은 사용자는 daemon대화형 사용자가 아닙니다. bin​​다른 프로그램을 실행하는 것이 아니라 데몬(예: 웹 서버) 실행과 같은 특별한 목적으로 사용됩니다.syssyncgamesmanlpmailnewsuucp

따라서 기본적으로 대화형 쉘이 없어야 합니다.

관련 정보