내가 사용하는 ssh-agent
래퍼 startx
. 항상 동일한 소켓 파일을 사용하면 보안 위험이 있습니까?
ssh-agent -a /tmp/xyz123 startx
-a
소켓 바인딩 주소를 지정합니다. 지정하지 않으면 임의의 파일 이름이 됩니다.
SSH_AUTH_SOCK=/tmp/xyz123
crontab 파일에 지정 하고 싶기 때문에 수정 소켓 파일 이름을 사용하고 싶습니다 . 그렇지 않으면 SSH를 사용하는 cronjob이 실패합니다.
답변1
IMHO /tmp
사용하는 것은 사소한 보안 위험입니다. 동일한 파일명을 사용하면 매번 바꿔도 찾기 쉽기 때문에 문제가 되지 않습니다.
사용자만 읽을 수 있는 디렉터리에 소켓을 배치합니다.
예를 들어, 많은 최근 배포에서 소켓 파일에는 항상 /run/user/1000/keyring/ssh
1000이 있으며 여기서 1000은 사용자 ID입니다.
답변2
소켓에는 디렉터리 내용과 동일한 보호 기능이 있습니다 ~/.ssh
. 파일 권한은 다른 사용자의 액세스를 제한합니다. 사람들은 종종 이것이 안전하다고 생각합니다. 그 가정하에 운영할 수 없다면 시스템에는 다른 수많은 취약점이 존재하기 때문에 소켓에 대해 걱정하는 것은 걱정하는 시간을 잘 활용하는 것이 아닙니다. :)
외부 관점에서 볼 때 모든 통신은 암호화되어 있으므로(물론!) 외부에서 내부를 보면 동일한 소켓을 사용하는 데 아무런 문제가 없습니다.
내가 말하려는 것은 이름이 항상 변경되는지 확인하면 (모호함을 통해) 약간의 추가 보안이 추가된다는 것입니다... 그렇게 하기 위해 많은 노력을 기울이거나 그렇게 할 것이라고 생각하기 시작하는 지점보다는... 트랙에서 검은 모자를 모두 멈췄습니다.