참고: 답변이나 댓글을 달 수 없어서 질문을 다시 게시합니다.
루트 액세스 없이 개체 파일을 개별적으로 실행하기 위해 루트가 아닌 사용자를 만들고 있습니다. 내 의도는 사용자가 /atlas/Bin
. 그래서 /etc/passwd
이를 설정했습니다 user:x:0:0:test:/:/atlas/Bin/object
. 그러나 사용자로 로그인하기 위해 SSH를 통해 (teraterm을 통해) 새 셸을 열면 개체를 찾을 수 없기 때문에 오류가 발생합니다.
개체를 찾는 데 도움이 되도록 /etc/profile
포함할 경로를 설정 하도록 변경했습니다 . /atlas/Bin
내가 여기서 무엇을 놓치고 있는지 잘 모르겠습니다. SSH를 통해 루트로 로그인하면 문제 없이 개체를 실행할 수 있습니다.
/etc
아래 빌드 파일에 사용된 값을 제공했습니다 .
/etc/비밀번호
root:x:0:0:root:/:/bin/sh
....
user:x:0:0:test:/:/atlas/Bin/object
sshd:x:15:6:sshd:/var/chroot/sshd:/bin/sh
/etc/그룹
root:x:0:root
...
sshd:x:6:user
/etc/구성 파일
PATH=/atlas/Bin:/usr/bin:/bin:/usr/sbin:/sbin
LD_LIBRARY_PATH=/lib:/usr/lib:/lib/dll/
alias ll="ls -l"
/etc/ssh/ssh_config
Host *
SendEnv LANG LC_*
/etc/ssh/sshd_config
Protocol 2
LoginGraceTime 600
LogLevel DEBUG3
PermitRootLogin yes
PasswordAuthentication yes
PermitEmptyPasswords no
답변1
실행 파일을 사용자의 셸로 사용하려면 프로그램을 /etc/shells
.
스크립트를 실행하고 종료하는 프로필이 있는 사용자를 위해 제한된 셸을 사용할 수 있습니다.
/bin/false
서버에 액세스하는 데 사용되는 키에 대해authorized_keys 파일에 지정된 셸 및 명령을 사용할 수 있습니다 . 그래도 작동하지 않으면 /bin/false
제한된 쉘을 사용해 보십시오 /usr/bin/rbash
.