/etc/ssh/sshd_config에 다음과 같은 줄을 추가할 수 있다는 것을 읽었습니다.ForceCommand /etc/ssh/loginscript.sh
"loginscript.sh"는 실행 가능하며 screen -ls
지금까지 실행됩니다. 문제는 다른 쉘 인스턴스에서 실행된다는 것입니다. 맞나요? 로그인 시 아무런 결과도 나오지 않았습니다.
편집: 좋아, 원래 문제를 해결했습니다. 일반 사용자에게 실행할 권한이 없습니다 /etc
. 로 옮겼고 /
이제 작동하고 로그인 셸에 에코됩니다.
다음 문제: 스크립트를 실행한 후 SSH 연결이 즉시 닫힙니다. 어떤 제안이 있으십니까?
답변1
사용자가 수행할 수 있는 작업을 엄격하게 제한하지 않는 한 ForceCommand
이 방법은 적합하지 않습니다. 대신 screen -ls
시스템 범위 .bashrc
(또는 사용하는 셸에 따라 이에 상응하는 범위)의 맨 아래에 추가하세요.
Debian 기반 시스템의 bash 셸은 에서 찾을 수 있습니다 /etc/bash.bashrc
.