우리는 많은 디렉토리를 생성하는 애플리케이션을 실행합니다. 신청서가 완료되면 이러한 디렉토리는 필요하지 않습니다. 그래서 공간을 많이 차지하므로 삭제하고 싶습니다. 문제는 응용 프로그램이 원격 서버에서 실행되고 있다는 것입니다. 원격 서버에서 이러한 디렉터리를 삭제하려면 쉘 스크립트를 작성해야 합니다.
ssh 명령을 시도했습니다
ssh [email protected] 'rm /some/where/some_file.war'
그런데 비밀번호를 물어보네요. 그런 다음 아래 단계를 따랐습니다.
비밀번호 없는 키를 설정하고 이 명령을 ssh 명령의 일부로 추가하세요. 바라보다:http://www.dotkam.com/2009/03/10/run-commands-remotely-via-ssh-with-no-password/
설명대로 모든 단계를 따를 수 있었지만 마지막에 비밀번호를 다시 물어보더군요.
비밀번호 없이 SSH를 사용하는 방법은 무엇입니까?
답변1
공개 키 인증과 함께 SSH를 사용하십시오. 이렇게 하려면 공개 키를 사용하여 키 쌍을 생성 ssh-keygen
하고 공개 키를 원격 시스템에 복사해야 합니다. 특히 username
로컬 PC 등의 콘텐츠를 원격 시스템에 첨부하는 데 사용됩니다.id_rsa.pub
~username/.ssh/authorized_keys
비밀번호를 전혀 입력하지 않으려면 개인 키를 비밀번호로 보호하지 마세요. 예를 들어 -N
아래와 같이 키 생성 중(openssh의 경우) 옵션을 사용하세요.
ssh-keygen -N '' ...
그러나 비밀번호 보호에는 보안에 대한 명확한 영향이 없습니다. 특히 개인 키를 다른 방법으로 보호해야 합니다. (이 설정에서는 username
SSH를 통해 수행할 수 있는 작업을 제한하면서 지정된 작업 목적으로만 개인 키 쌍을 사용하는 것이 좋습니다.)
openssh를 사용하고 비밀번호를 한 번만 입력하려는 경우 SSH 에이전트를 사용하는 것도 또 다른 옵션입니다.