다른 Suse 상자에 대한 SSH 액세스 권한이 있고 Suse 상자에 특정 디렉터리를 나열하고 싶습니다. 이는 다른 수세박스에서 수행됩니다. 나중에 PHP에서 실행하겠습니다.
그런 일이 가능합니까?
답변1
ssh
ssh 명령의 마지막 인수로 명령을 전송하면 원격 명령의 출력을 반환할 수 있습니다.
ssh user@host 'ls /path/to/dir'
키 기반 인증 설정이 있는 경우 비밀번호를 입력하지 않고도 인증을 수행할 수 있습니다.
그러나 구문 분석된 출력은 ls
항상 나쁜 생각이며 좀 더 이국적인 사용 사례가 있는 것처럼 들립니다. SSH를 통해 액세스할 수 있는 거의 모든 파일 시스템을 마운트할 수 있는 SSHFS라는 파일 시스템이 있습니다. PHP 스크립트가 로컬 파일 및 디렉토리 세트인 것처럼 작동할 수 있도록 원격 디렉토리를 마운트할 수 있습니다.
답변2
예, 가능합니다. SSH 클라이언트는 실행할 명령을 지정하기 위해 선택적 매개변수를 사용하는 경우가 많습니다. 예를 들어:
ssh user@remoteserver "ls particulardirectory"