CentOS에서 읽기 전용 계정을 만드는 방법은 무엇입니까?

CentOS에서 읽기 전용 계정을 만드는 방법은 무엇입니까?

centos7에 읽기 전용 계정을 만들고 싶은데, 구글링을 해보아도 읽기 전용 계정을 만드는 방법이 없습니다. 파일에 대한 쓰기 권한은 없고 읽기 권한만 있는 계정을 만드는 방법을 알고 싶습니다.

답변1

질문은 불분명합니다. Linux의 계정은 읽기 전용이 아닙니다.

나는 당신이 다음 질문 중 하나를 묻고 있다고 가정합니다.

  1. 로그인할 수 없는 계정 만들기
  2. 계정을 만들어라할 수 있는로그인했지만 다른 사용자는 자신의 홈 디렉터리에 있는 파일을 수정할 수 없습니다.
  3. 계정을 만들어라할 수 있는로그인했지만 사용자가 다른 폴더에 쓸 수 없도록 제한되었습니다.

1. 로그인할 수 없는 계정을 만드세요

이는 사용자의 쉘을 /bin/false. 이는 일반적으로 프로세스를 실행하기 위해 시스템 계정을 만드는 데 사용되지만 해당 계정을 사용하여 로그인할 수는 없습니다. 이러한 사용자에게는 기본적으로 홈 폴더가 추가되지만, 대부분의 경우 이를 지정하지 않으면 실용적이지 않습니다 . 또한 "비밀번호 만료 후 즉시 계정 비활성화" 옵션을 --no-create-home설정하고 싶습니다 .--inactive 0

sudo useradd --system --no-create-home --inactive 0 --shell /bin/false NAME_OF_USER

계정을 사용할 때 일반적으로 비밀번호를 설정해야 합니다. 이것만으로는 쉘에 로그인하는 것을 허용하지 않지만,하다로컬 인증에 계정을 사용할 수 있으며 계정을 사용하여 프로세스 등을 실행할 수 있습니다.

새 계정의 비밀번호를 설정하려면(정상 금액 또는 보조 계정에서 root):

sudo passwd NAME_OF_USER

2. 계정 만들기할 수 있는로그인했지만 다른 사용자는 자신의 홈 디렉터리에 있는 파일을 수정할 수 없습니다.

사용자의 홈 폴더는 사용자가 소유자가 되어 해당 폴더에 대한 rwx 권한을 갖도록 생성되어야 합니다. 그렇지 않으면 사용자가 비밀번호를 설정한 후에도 올바르게 로그인할 수 없습니다. 제 기억이 맞다면 이 경우에는 그래픽 세션은 불가능하지만 터미널에서 로그인은 가능하다고 생각하는데 그냥 오류만 발생하고 일시적으로 (해당 세션에 대해) 사용자 홈페이지를 임시 위치(적어도 , 몇 년 전 잘못된 구성으로 인해 이런 일이 발생한 것을 기억합니다.)

자신이 소유한 폴더에 대한 권한을 변경할 수 있습니다. 따라서 "다른" 사용자가 파일을 수정하는 것을 방지하지만 여전히 읽기를 허용하려면 다음을 사용할 수 있습니다.

chmod -R o-w ~

-R옵션은 변경 사항이 모든 하위 폴더와 파일에 반복적으로 적용되어야 함을 나타냅니다. o-w우리가 원하는 걸 보여줘제거하다이것의례적 허가그들의 사용자. 마지막으로 는 ~자신의 홈 폴더 위치에 대한 약어입니다.

실제로 기본 폴더 아래의 대부분의 하위 폴더, 특히 숨겨진 "점" 폴더에 대한 읽기 액세스를 차단하는 것이 좋습니다. 그렇지 않으면 ~/.mozilla사용자가 저장된 비밀번호를 포함하여 하위 폴더의 전체 복사본을 만들 수 있습니다.

다른 사용자의 홈 폴더에 대한 모든 액세스를 비활성화하려면 다음을 수행하십시오.

chmod -R o-wrx ~

이는 기본적으로 이전과 동일한 명령입니다. 단, 쓰기 권한 외에도 제거했습니다.아르 자형그리고 전자엑스다른 사용자에게도 권한을 부여하세요.

마지막으로 파일의 "umask" 값을 설정하여 ~/.bashrc사용자가 만든 새 파일이나 폴더에 대한 시작 권한을 정의할 수 있습니다(이는 주로 터미널에서 만든 파일에 적용됩니다... 파일 관리자와 같은 그래픽 응용 프로그램은 이를 따르지 않을 수 있습니다) 귀하의 권한 umask 설정).

# new dirs => 770
# new files => 660
umask 0007

이것은 이미 답변이 길고 umask가 약간 복잡하기 때문에 여기서는 깊이 다루지 않겠습니다. umask에 대한 자세한 내용은 여기에서 확인할 수 있습니다.https://www.computernetworkingnotes.com/rhce-study-guide/how-to-change-default-umask-permission-in-linux.html

3. 계정 만들기할 수 있는로그인했지만 사용자가 다른 폴더에 쓸 수 없도록 제한되었습니다.

다른 사용자(예: 게스트 계정)가 특정 폴더에 액세스하는 것을 원하지 않는 경우 두 번째 부분과 유사하지만 다른 계정에서 권한을 간단히 변경할 수 있습니다.

예를 들어, 사용자 "main"과 사용자 "guest"가 있고 게스트가 사용자 main이 소유한 "/media/shared-stuff" 폴더에 쓸 수 없도록 하려는 경우입니다.

먼저 "main"으로 로그인한 다음

chmod -R o-w /media/shared-stuff

또한 폴더의 그룹을 이 두 사용자가 속한 그룹으로 변경하지 않았다고 가정합니다. 기본적으로 그룹은 귀하의 사용자 이름과 동일해야 하며 귀하는 그룹의 유일한 사람이 됩니다. 그러나 소유자로 간주되는 그룹을 사용하거나 변경하고 사용자 "guest"가 해당 그룹의 일부인 경우 chown해당 chgrp그룹이 글을 쓸 수 없도록 다음을 수행해야 합니다.

chmod -R gw /media/shared-stuff

이는 기본적으로 이전과 동일하지만,우리는 이러한 사용자를 다음 위치에서 이동하고 있습니다.G그룹

관련 정보