sitelink1 | |
---|---|
sitelink2 | |
sitelink3 |
TFS에 인증서를 적용하기 위해서는 연계된 웹서버(IIS)에 반영하면 된다
IIS(인터넷 정보 서비스) 관리자를 오픈한다
서버홈을 선택하고 우측의 "서버 인증서"에서 우클릭하여 "기능 열기"를 선택한다
"서버 인증서" 창이 열리면 우측 작업란에서 "가져오기" 링크를 클릭하여 "인증서 가져오기" 창을 띄우고
파일 선택을 눌러 파일 다이얼로그로 인증서 파일을 선택한다
인증서 파일을 선택하였으면 인증서 암호를 입력하고 확인 버튼을 클릭한다
인증서 등록후 https 프로토콜을 바인딩해야 한다
사이트 > Team Foundation Server 를 선택후 우클릭하고 "바인딩 편집"을 선택한다
사이트 바인딩이 뜨면 기존의 http 포트를 외부에 노출하지 않게 해야한다 (필요없다면 삭제)
노출하지 않도록 수정하려면 "편집" 버튼을 클릭한다
편집창이 뜨면 "호스트 이름"에 컴퓨터 이름 또는 "localhost" 으로 변경하면 내부에서만 접속이 가능해진다 (컴퓨터명은 내부망에서만 공유되기 때문에)
이때 주의할 점은 하단과 같이 IP 주소에 * 이외의 값을 지정해서는 안된다 (어떤 이유에선지 로컬에서조차 접속이 불가해진다)
https 프로토콜을 추가하기 위해 "추가" 버튼을 클릭한다
IP 주소란에는 서버의 내부IP 주소와 포트를 입력하고 호스트 이름에 할당받은 도메인을 기입한다
"SSL 인증서" 란에서 등록한 인증서를 선택하고 확인한다
설명하자면 요청하는 url정보가 https프로토콜에 호스트 이름인 경우 지정한 IP주소와 포트에 대해서만 허용이 된다 (IP주소를 * 로 하면 내부 네트웍망의 모든 PC의 접속 요청이 허용)
위와 같은 설정은 다음의 특징을 가지게 된다
- 공식 도메인은 외부에서만 허용되기 때문에 https 접속 역시 외부에서만 허용된다
- 두번째 정의한 http는 서버의 컴퓨터명인데 내부네트웍에서만 허용되기 때문에 http 접속 역시 내부에서만 허용된다
- 세번째는 현재 서버 로컬에서의 접속도 명시적으로 허용하겠다는 의미이다
- 따라서 https는 외부에서만 http는 내부에서만 허용한다
- 참고로 https 프로토콜의 IP주소 란에 * 대신 서버의 내부IP를 입력해도 결과는 동일하다
이후 웹서버를 재시작하고 브라우저와 Visual Studio 로 접속을 해본다
* 참고 URL *
https://hybriddbablog.com/2017/12/16/changing-tfs-to-use-https-update-your-agent-settings-too
https://medium.com/@grazibonizi/setting-up-a-tfs-demo-environment-with-ssl-d56730bbc250