![ssh 로그인 - 명령 실행 - 종료](https://rvso.com/image/515688/ssh%20%EB%A1%9C%EA%B7%B8%EC%9D%B8%20-%20%EB%AA%85%EB%A0%B9%20%EC%8B%A4%ED%96%89%20-%20%EC%A2%85%EB%A3%8C.png)
사용자(ssh) 로그인 시 명령(또는 스크립트)을 실행하고 종료하는 방법이 있습니까? 일종의 기본 셸을 사용자 정의 스크립트로 바꾸는 것입니다.
사용자가 서비스를 다시 시작할 수만 있고 일반 셸 액세스는 할 수 없기를 원합니다.
감사해요
답변1
이를 수행하려는 방법은 SSH 키를 사용하고 사용자의 .ssh/authorized_keys 파일에서 키와 연관된 명령을 설정하는 것입니다. 빠른 Google은 나에게 제공합니다이것, 특히 "강제 명령" 섹션을 참조하세요.
편집: 두 번째 부분은 passwd -l
사용자에게 비밀번호 기반 로그인이 불가능하도록 하는 것입니다.
답변2
Ubuntu에서는 서비스를 다시 시작하는 스크립트를 만들 수 있었습니다. 그런 다음 사용자의 /etc/passwd 항목에서 스크립트를 로그인 셸(마지막 필드)로 설정했습니다.
/etc/passwd에서:
테스트계정:x:1001:1001:1,,:/home/testaccount:/home/testaccount/login.sh
답변3
그런 것?
root@admin:~ # ssh root@www 'df -h'
Filesystem Size Used Avail Use% Mounted on
/dev/ubda 3.5G 2.1G 1.4G 61% /
tmpfs 96M 4.0K 96M 1% /dev/shm