!["일치 그룹" 블록 뒤의 ForceCommand에서 사용자 이름 등을 일반적으로 참조할 수 있습니까?](https://linux55.com/image/181902/%22%EC%9D%BC%EC%B9%98%20%EA%B7%B8%EB%A3%B9%22%20%EB%B8%94%EB%A1%9D%20%EB%92%A4%EC%9D%98%20ForceCommand%EC%97%90%EC%84%9C%20%EC%82%AC%EC%9A%A9%EC%9E%90%20%EC%9D%B4%EB%A6%84%20%EB%93%B1%EC%9D%84%20%EC%9D%BC%EB%B0%98%EC%A0%81%EC%9C%BC%EB%A1%9C%20%EC%B0%B8%EC%A1%B0%ED%95%A0%20%EC%88%98%20%EC%9E%88%EC%8A%B5%EB%8B%88%EA%B9%8C%3F.png)
내가 사용하고 있다고 가정 해 봅시다Match Group
내가 사용하는 블록 내부ForceCommand
연결하는 사용자의 이름이나 사용자의 홈 폴더를 비슷한 방법으로 참조할 수 있는 방법이 있나요?AuthorizedKeysFile
사용할 수 있다토큰 %h
, %U
, 그리고 %u
?
아니면 ForceCommand
이러한 토큰의 내용을 다른 형태로 얻습니까? 즉, /etc/ssh/sshrc
환경 변수를 출력하는 데 사용하는 경우 내부 변수를 사용하는 것이 적절 $USER
하거나 $HOME
허용됩니까 ForceCommand
?
중요한 경우: 버전 8.2p1을 사용하고 있습니다.
답변1
연결하려는 목적으로 이 명령을 실행하세요. 따라서 $USER
, $LOGNAME
, $HOME
등을 동일한 사용자로 설정했습니다. 사용하는데 문제가 없습니다.
명령 자체는 사용자의 셸(일반적으로 bash, so /bin/bash -c 'your_forcecommand'
)을 사용하여 실행되므로 이러한 변수를 ForceCommand에 포함할 수 있으며 해당 변수는 셸에 의해 확장됩니다.
명령은 사용자의 로그인 쉘과 -c 옵션을 사용하여 호출됩니다.
당신은 할 수OpenSSH 코드에서 찾기PATH
, 및 을 설정합니다 USER
.LOGNAME
HOME