![로그인 시 "ssh-agent bash" 및 "ssh-add"를 자동으로 실행하는 방법은 무엇입니까? [복사]](https://linux55.com/image/11134/%EB%A1%9C%EA%B7%B8%EC%9D%B8%20%EC%8B%9C%20%22ssh-agent%20bash%22%20%EB%B0%8F%20%22ssh-add%22%EB%A5%BC%20%EC%9E%90%EB%8F%99%EC%9C%BC%EB%A1%9C%20%EC%8B%A4%ED%96%89%ED%95%98%EB%8A%94%20%EB%B0%A9%EB%B2%95%EC%9D%80%20%EB%AC%B4%EC%97%87%EC%9E%85%EB%8B%88%EA%B9%8C%3F%20%5B%EB%B3%B5%EC%82%AC%5D.png)
사용자가 SSH를 통해 CENTOS 시스템에 로그인할 때마다 다음 명령을 실행해야 하는 시나리오가 있습니다.
SSH-에이전트 bash SSH-추가
[다른 스레드에서는 내가 이 명령을 사용하는 이유를 설명합니다.
ssh-add가 불평합니다: 인증 프록시에 대한 연결을 열 수 없습니다 ]
.bashrc에 넣으려고 했는데 Putty를 통해 로그인하면 로그인이 중단되는 것 같습니다.
또한 두 명령을 쉘 스크립트에 넣은 다음 로그인 후 수동으로 쉘 스크립트를 실행하려고 시도했지만 작동하지 않았습니다("ssh-agent bash"만 실행한 것 같습니다).
그러면 사용자가 로그인할 때 이 두 명령을 실행할 수 있습니까? 그렇다면 어떻게 해야 합니까?
고마워요, 짐
답변1
당신이 넣으면
ssh-agent bash ssh-add
당신의 것에서는 .bashrc
무한 재귀가 발생합니다. 쉘이 .bashrc
실행을 시작하고 ssh-agent
...의 또 다른 복사본이 시작되어 bash
다시 실행되고 .bashrc
프로세스가 반복됩니다.
당신은 다음과 같은 것을 원할 것입니다 :
if [[ "$SSH_AUTH_SOCK" = "" ]]; then
# on the first round, we do this...
exec ssh-agent bash
else
# ... and when ssh-agent is running, we do this instead.
ssh-add
fi