Ubuntu 16.04 사용자가 rbash를 종료하는 것을 방지하는 방법은 무엇입니까?

Ubuntu 16.04 사용자가 rbash를 종료하는 것을 방지하는 방법은 무엇입니까?

에서 Ubuntu 16.04특정 사용자 쌍을 제한하고 싶습니다 . 다음 명령을 사용 rbash하도록 사용자의 로그인 셸을 설정했습니다 .rbash

usermod -s /bin/rbash localuser

ssh해당 사용자로 상자에 들어가서 다음을 입력하면 :

/bin/bash

사용자는 쉘을 종료 rbash하고 bash.

rbash이 사용자의 액세스를 으로 제한 하고 으로 전환하는 것을 방지하려면 어떻게 해야 합니까 bash?

답변1

이 기능을 사용하려면 /etc/profile(참고자료 참조)로 시작하는 마지막 경로 구성 요소가 있는 쉘에 의해서만 실행되는 파일에 특수 코드를 설정하고 제한된 쉘에 대한 특수 코드를 설정해야 합니다.$0rPATH

/usr/rbin예를 들어, 디렉토리를 유일한 요소로 설정하고 PATH제한된 사용자가 호출할 수 있는 명령에 대한 링크를 설치하십시오. 이 옵션을 매우 신중하게 선택하고 쉘 이스케이프를 허용하는 명령을 피하십시오. 안전한 편집기 ed이므로 주의하시기 바랍니다 .red

/etc/profile실행 후에 는 PATH수정할 수 없습니다 . 이렇게 하지 않으면 rbash사용자는 일반적인 권한을 가지게 되므로 의 기본 버전을 얻기 위해 PATH호출할 수 있습니다 .bashbash

모든 것이 올바르게 수행되고 있는지 확인하려면 몇 가지 실험을 수행해야 합니다. 불행하게도 bash매뉴얼 페이지는 실제로 도움이 되지 않습니다. 따라서 더 많은 정보를 보려면 제한된 매뉴얼 페이지를 알려드리겠습니다 Bourne Shell. http://schillix.sourceforge.net/man/man1m/rsh.1m.html

여기에는 $HOME/.profile변경 허용이 언급되어 PATH있으므로 이 내용도 적용되는 경우 사용자가 수정할 수 없도록 rbash해야 합니다 . BSD 파일 플래그를 사용하여 이 파일을 생성하면 $HOME/.profile됩니다 .immutable

관련 정보