SSH 출력을 파일로 리디렉션하는 방법

SSH 출력을 파일로 리디렉션하는 방법

내 서버에 SSH 연결을 설정하고 싶지만 비밀번호를 입력하고 싶지 않습니다. 출력을 다음과 같은 파일에 저장하고 싶습니다.

$ ssh [email protected] -p 22 1>output 2>&1

하지만 실행하면 출력에 다음과 같이 표시됩니다.

[email protected]'s password:

이 상태를 나에게 표시되지 않고 파일로 리디렉션한 다음 즉시 SSH 연결을 닫고 싶습니다...

어떻게 해야 합니까?

답변1

당신은 아무 잘못도 하지 않았습니다. 단지 비밀번호 입력이 특별했다는 것뿐입니다.

ssh아무것도 하지 못하도록 비밀번호 입력을 원하지 않는다고 가정합니다.진짜/dev/tty대신 비밀번호 프롬프트 에 사용되도록 파이프를 원합니다 stdout.

ssh다음과 같이 비밀번호를 묻지 않도록 할 수 있습니다 .

ssh -o BatchMode=yes [email protected]

이제 사용 가능한 키나 기존 연결이 없으면 종료됩니다.

그러나 "Password:" 프롬프트 텍스트를 캡처하는 직접적인 방법은 없다고 생각합니다.

답변2

비밀번호를 사용하지 마세요. 비밀번호가 비어 있는 공개-개인 키를 사용하세요.
ssh -2 -I /home/localloginame/.ssh/astroboy -l 로그인 호스트 이름 \ "cd inbox; ls -l; 종료"

스티븐 유니버스는 어떤 작품인가요? 이것은 파일입니다. 이것은 개인 키입니다. 키를 만들면 비공개 부분: /home/localloginname/.ssh/astroboy 및 공개 부분: /home/localloginname/.ssh/astroboy.pub

이제 그 키를 만드는 방법.... /???/ssh/bin/key-gen -t dsa astroboy

그런 다음 비밀번호를 묻습니다. 빈 비밀번호를 입력할 수 있습니다. 불평하겠지만 계속 진행하세요. 그렇다면 거기에 있습니다.

내가 틀렸다고 말하면 누군가가 나를 고쳐주기를 바랍니다.

관련 정보