특정 프로세스를 실행할 때 비밀번호를 강제로 입력할 수 있나요?

특정 프로세스를 실행할 때 비밀번호를 강제로 입력할 수 있나요?

나는 흔히 "장난꾼"이라고 부르는 사람들이 내 콘솔에 접근할 수 있는 환경에서 일합니다.

chmod -R 777 *자리를 비울 때마다 화면을 잠그는 데 어려움을 겪지만, 충분한 시간이 주어지면 내가 다른 쪽을 보고/연필을 깎는 동안/무엇이든 누군가가 입력할 기회가 있습니다.

특정 명령에 대해 강제로 비밀번호를 다시 입력할 수 있는 방법이 있습니까( , rm, chmod, chown, vi ~/.bashrc&c 생각 중입니다)?

.bashrc 및 .bash_profile을 모든 사용자(나 자신 포함)에 대해 읽기 전용으로 변경한 다음 chown/chmod/비밀번호가 필요한 모든 스크립트에 별칭을 지정하는 방법을 생각했지만 해커인 것 같습니다.

편집: 나는 이 컴퓨터에서 sudoer가 아닙니다.

답변1

몇 가지 다른 방법이 떠오릅니다.

1)

파일 시스템 ACL을 사용하여 이러한 특정 바이너리에 대한 사용자의 실행 권한을 제거합니다. 그런 다음 실행하는 데 사용하도록 요청하십시오 sudo.

예를 들어 사용자가 chmod를 실행하지 못하도록 방지합니다.

setfacl -m u:trideceth12:- `which chmod`

이제 실행을 시도하면 chmod"권한 거부" 오류가 발생합니다.

(이 접근 방식의 단점은 바이너리가 업데이트되면 ACL이 재설정된다는 것입니다. 하지만 쉘 시작 스크립트에서 ACL을 간단히 확인하고 누락된 경우 경고할 수 있습니다.)

2)

주석에서 언급했듯이 명령에 다른 이름을 붙입니다(예: /bin/true명령이 유효한 것처럼 보이도록 하려면 yes).

삼)

약간 덜 쉬운 수정(그러나 여전히 쉬운)은 $PATH일반 검색 위치 앞에 특수 디렉토리를 배치하고 .txt 파일을 /bin/true해당 디렉토리에 복사하는 것입니다 chmod. 이렇게 하면 별칭으로 표시되지 않습니다.


확실히#1실제로 사용자를 오도하는 것 이상을 수행하고 실제 보안을 구현하기 때문에 최고의 솔루션입니다.

관련 정보