rbash 사용자에게만 su를 허용합니다.

rbash 사용자에게만 su를 허용합니다.

rbash를 기본 쉘로 설정한 사용자가 명령만 사용하도록 하고 싶습니다 su. 사용자의 홈 디렉터리에 "bin" 폴더를 만들고 바이너리 su(/bin/su)를 이 폴더에 복사했습니다. 그런 다음 이 사용자의 경로를 으로 설정했지만 $HOME/binsu를 사용할 때 다른 계정으로 전환할 수 없습니다.

su는 이 경우 차단된 다른 바이너리에 의존합니까? su를 사용할 때 발생하는 오류는 비밀번호가 잘못된 경우 발생하는 오류와 동일합니다. su는 섀도우 파일을 보기 위해 cat이나 이와 유사한 것을 사용합니까?

사용자가 다른 사용자에게 su를 허용하려면 어떤 바이너리를 제공해야 합니까?

빈 디렉터리:

/home/user/bin# ls -al
total 68
drwxr-xr-x 2 root root  4096 Aug 21 19:32 .
drwxr-xr-x 4 root root  4096 Aug 20 22:44 ..
-rwxr-xr-x 1 root root 59424 Aug 20 21:32 su

답변1

su실행 파일을 전혀 이동할 필요가 없습니다 . su단 한 명의 사용자(및 루트)만 실행할 수 있도록 액세스 권한을 설정할 수 있습니다 .

루트 사용자와 파일이 있는 디렉터리에서 다음 명령을 실행합니다 su.

먼저 독점 액세스 권한을 부여하려는 사용자에게 파일 소유자를 설정하십시오.

chown USER_NAME su

그런 다음 소유자를 제외한 모든 사람의 실행 액세스 권한을 제거합니다. 즉, x(o)다른 사람과 (g)그룹의 권한을 제거합니다.

chmod og-x su

관련 정보