here에 나열된 지침을 사용하여 하나의 TFS 온 - 프레미스 빌드 에이전트를 서비스로 설정했습니다. 내가 첨부 된 에이전트 풀, 사용 권한, 설치 컨트롤러 등을 설정하고 에이전트를 연결하고 실행하는 데 필요한 대부분의 설치 문제를 해결했습니다.TFS (Premise Build Agent) - SSL/TLS 보안 채널에 대한 트러스트 관계를 설정할 수 없습니다.
내 구성이 같은 같습니다 : 지금 연결하고 실행할 수있는 에이전트 빌드가
"settings.json" - "ServerURL": http://tfs.XXXXXXXXX.com:80/tfs
"Listen for Build Agent communication on:" http://XXXXXXXXXXX.com:9191/Build/v5.0/Services
을하지만 사용하여 내 새로 어떤 빌드를 실행하려고하면 구성된 에이전트 풀 에이전트 로그에 항목이있을 때 항상 실패합니다.
System.Net.Http.HttpRequestException: An error occurred while sending the request. ---> System.Net.WebException: The underlying connection was closed: Could not establish trust relationship for the SSL/TLS secure channel. ---> System.Security.Authentication.AuthenticationException: The remote certificate is invalid according to the validation procedure.
The Agent failed to start this job. Error: An error occurred while sending the request.
이것은 매우 잘못되었습니다 내 TFS 구성에서 SSL을 사용하지 않기 때문에 나에게 융합되었습니다. 포트 443을 사용하지 않을 경우 잘못된 인증서 (이 경우 자체 서명)에서 어떻게 실패합니까? 해당 위치로 웹 브라우저 (firefox)를 통해 연결하면 자동으로 "https"로 리디렉션되지 않습니다. 에이전트가 어떻게 리디렉션됩니까? 다시 말하지만, 문제없이 (또는 실패한 인증서) 나열된 URL에 연결할 수 있지만 에이전트가 아닌 이유로 볼 수 있습니다.
나는이 문제가있는 유일한 사람인지 확실하지 않습니다. 내 생각에 this은 관련이 있지만 소프트웨어의 동일한 버전이 아닙니다. 이 오류 메시지에 대한 백만 번 다른 참조가 있지만 동일한 컨텍스트 또는 구성을 가진 단일 메시지는 표시되지 않습니다. 이전에이 문제를 본 사람이 있습니까?
서버의 관리 패널에있는 TFS 서버의 알림 Uri는 무엇입니까?https 위치로 설정되면 초기 연결 후 빌드 에이전트가 리디렉션됩니다. Windows의 신뢰할 수있는 루트 인증서의 저장소에 자체 서명 된 서버 인증서를 추가하면 빌드 에이전트가 인증 할 수 있어야합니다. – jessehouwing
아, 네가 맞다면, 그것은 "https"이다. 또한 두 번째 제안에서 나는 광범위하게 맞다고 생각하지만, 그 변화의 세부 사항은 처음에는 생각했던 것보다 [실질적으로 더 복잡하다] (http://stackoverflow.com/a/8752467/2912011). 이 질문은이 질문의 범위를 벗어납니다. 나는 "알림 URL"을 변경하는 것이 다른 누구에게나 가장 쉬운 해결책 일 것이라고 생각합니다. –