사용자 계정에 대해 sudo 권한을 활성화하고 전역적으로 루트 액세스를 비활성화합니다.

사용자 계정에 대해 sudo 권한을 활성화하고 전역적으로 루트 액세스를 비활성화합니다.

사용자 계정 목록에 대한 sudo 액세스를 활성화하고 루트(예: sudo su - 또는 su -)로의 전환을 비활성화하고 싶습니다. CentOS7에서 이 방법을 활성화하려면 어떤 단계를 수행해야 합니까?

또한 사용자 목록에 대한 재시작/종료 명령을 비활성화하고 싶은데 가능합니까?

답변1

사용자가 alice루트로 명령을 실행할 수 있도록 하려면 sudosudoers 파일에 다음 줄을 추가하세요.

alice ALL = (ALL:ALL) ALL

그룹의 모든 사용자가 administrators루트로 명령을 실행하도록 허용하려면 sudosudoers 파일에 다음 줄을 추가합니다.

%administrators ALL = (ALL:ALL) ALL

명령을 사용하여 sudoers 파일을 편집합니다 visudo. 이 파일을 직접 편집하지 마십시오. 파일이 손상되어 루트 계정이 잠길 수 있습니다. 이 작업을 수행하는 동안 실행 중인 셸을 한 터미널에서 루트로 남겨두고 다른 터미널에서 여전히 루트 계정에 액세스할 수 있는지 확인하는 것이 좋습니다.

루트로 명령을 실행할 수 있는 사용자는 명령을 성공적으로 실행할 수 있습니다 sudo su -. 작동하는 것을 방지할 수 있지만 등과 같은 변경을 방지할 수 없으므로 이는 완전히 의미가 없습니다. 사람들이 루트로 명령을 실행하도록 신뢰 sudo -i하거나 sudo bash --login신뢰하지 않습니다.

su -사용자는 루트 비밀번호를 모르면 루트 계정에 접근할 수 없습니다. sudo 없이 루트가 되는 것을 원하지 않으면 루트 비밀번호를 제공하지 마세요.

사용자가 재부팅할 수 있도록 허용하지만 루트로 임의의 명령을 실행하지 않으려면 사용자에게 실행 권한을 부여 reboot하거나 보다 일반적 shutdown으로 권한을 부여할 수 있습니다.

charlie ALL = (root) /sbin/reboot

물론, 루트로서 임의의 명령을 실행할 수 있는 사용자는 필요한 경우 재부팅할 수 있습니다. 다시,모든 것재시작이 포함되어 있으며 "잠깐 기다렸다가 다시 시작", "이메일을 보낸 다음 다시 시작" 등 변형이 무한대이므로 "다시 시작을 제외한 모든 것"은 불가능합니다.

원격으로 로그인한 사용자가 없으면 기본적으로 로그인한 사용자로 콘솔을 다시 시작할 수 있습니다. 이 기능을 비활성화하려면 다음을 수정하십시오.폴킷규칙. CentOS에서 어떤 파일을 수정해야 할지 모르겠습니다.

관련 정보