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