사용자에게 루트 권한을 할당하는 방법은 무엇입니까?

사용자에게 루트 권한을 할당하는 방법은 무엇입니까?

내 데스크탑에는 Suse Linux가 있습니다. 그래서 저는 루트이자 "일반" 사용자입니다. 일반적으로 Tomcat을 시작하거나 sudo프로그램을 설치/제거하는 것과 같이 슈퍼유저를 사용하거나 전환해야 합니다. 하지만 .bashrc경로 등에 .profile많은 별칭이 정의되어 있습니다 .

슈퍼유저의 일부 권한을 일반 사용자에게 할당할 수 있나요? 설치 프로그램처럼요?

답변1

예, 하지만 그건 당신이 할 수 있는 최악의 일입니다. 운영 체제에는 서로 다른 권한을 가진 다양한 사용자가 있습니다. 이는 의도적인 것입니다. 사용자에게 루트 권한을 영구적으로 부여하면 시스템 보안이 손상됩니다. (Windows 9x와 모든 바이러스를 기억하시나요?)

(셸)을 sudo실행하지 않는 한 명령을 실행하는 데 사용자 정의가 필요하지 않은 것 같습니다 ./bin/sh

원하는 효과를 얻으려면 다음을 수행할 수 있습니다.

콘텐츠를 시스템 안팎 으로 ~/.bashrc이동할 수 있으며 , 별도의 스크립트에 넣는 것이 더 좋습니다 (잊지 마세요 ). 이 파일은 각 로그인 세션마다 실행됩니다.~/.profile/etc/bash/bashrc/etc/profile/etc/profile.d/mystuff.shchmod +x /etc/profile.d/mystuff.sh

그런 다음 루트 세션을 시작하고 su -,-에 전달된 (빼기) 기호는 su로그인 세션을 실행하므로 위 파일이 실행됩니다. Linux 배포판에 따라 전화를 걸어야 할 수도 있습니다 sudo su -.

루트 세션을 완료한 후에는 루트 권한을 유지하는 것이 가장 좋습니다 logout.

특정 바이너리에 대한 루트 액세스만 필요한 경우 효과적인 UID라는 또 다른 방법이 있습니다. 예를 들어 mtr바이너리 에 대해 다음을 사용할 수 있습니다 .

chmod a+s `which mtr`

이렇게 하면 mtr바이너리를 실행할 때 바이너리를 소유한 사용자(이 경우 루트( chown root /path/to/mtr))의 유효 권한을 갖게 됩니다. sudo를 입력하는 시간을 절약할 수 있지만 루트 권한을 부여할 바이너리를 신중하게 선택해야 합니다. 위험을 모르면 위험합니다. 첫 번째 옵션을 사용하는 것이 좋습니다.

답변2

Tomcat은 다음에서 시작되어야 합니다.초기화 스크립트. 사용자 그룹에게 Tomcat을 (재)시작할 수 있는 권한을 부여하려면 다음 줄을 추가하세요./etc/sudoers사용 visudo. 이는 다음과 같을 수 있습니다:

%tomcatcontrol localhost = NOPASSWD : /etc/init.d/tomcat *

localhost를 컴퓨터 이름으로 바꾸십시오. 그런 다음 그룹의 각 사용자톰캣 컨트롤다음을 발행할 수 있습니다:

sudo /etc/init.d/tomcat restart(또는 상태, 중지 또는 시작).

이것이 sudo의 목적입니다. 루트 계정으로 더 오랫동안 작업하고 싶다면 그렇게 할 수 있습니다 su -. 다른 사용자가 실제로 Tomcat 콘텐츠(사용자 Tomcat이 소유한 파일)를 관리하도록 하려면 su - tomcat사용자 또는 사용자 그룹을 허용할 수 있습니다.

귀하의 별칭에 관해서는 - OpenSuSE에는 이 목적을 위해 /etc/profile.local이 있다고 생각합니다. 거기에 모든 사용자에게 유효한 것을 넣을 수 있습니다.

관련 정보