sudo -i ssh(비밀번호 포함)

sudo -i ssh(비밀번호 포함)

권한을 높이는 서버에 연결하는 스크립트를 작성하고 싶습니다. 지금은 스크립트를 사용하고 expect있는데 변경하고 싶습니다. 이를 달성하기 위해 시도한 한 가지 방법은 다음과 같습니다.

ssh host -t 'echo "passowrd" | sudo -S echo; sudo -i'

서버의 명령 기록에 비밀번호가 저장되어 있나요? 다음 명령에 대한 문서를 찾을 수 없습니다.

ssh host -t 'ls;echo $SHELL;history;bash -l'

이 명령은 ls 명령과 "/bin/bash"의 결과를 표시합니다.

답변1

sudoer를 사용하는 것(visudo 또는 /etc/sudoers.d에 구성을 넣는 것)은 사용자에게 비밀번호 없이 주어진 명령을 실행할 수 있는 권한을 부여하는 더 나은 접근 방법인 것 같습니다.

대화형 모드를 사용하지 않는 경우(로그인하지 않고 원격으로 실행) bash 기록에 항목이 없습니다. Bash의 기록에 액세스하려면 다음 명령을 사용해야 합니다. ssh host "cat .bash_history" 그러나 원격 실행에서는 항목을 찾을 수 없습니다.

관련 정보