RDP 접속시 인증서 교체 방법입니다.


CMD에서 mmc.exe


스냅인 추가/제거


인증서 추가


컴퓨터 계정 다음


마침


확인


우클릭 모든 작업에서 가져오기


다음


pfx, p12 인증서 찾아보기 다음


인증서 비밀번호 입력 다음


다음


마침


확인


원하는 인증서 우클릭 열기


자세히 지문에서 지문 복사


CMD 관리자 모드로 실행

wmic /namespace:\\root\cimv2\TerminalServices PATH Win32_TSGeneralSetting Set SSLCertificateSHA1Hash="지문입력"

엔터


RDP 재접속시 인증서 오류가 사라지게 됩니다.

당연하지만 자체 발급 인증서로 교체는 인증서 오류가 계속 나옵니다.


먼저 letsencrypt-win-simple 최신버전을 받아주세요.

https://github.com/Lone-Coder/letsencrypt-win-simple/releases


먼저 압축을 풀어줍니다.


압축을 푸신 뒤 letsencrypt.exe 실행 해봅시다.

아마 처음에 이메일 입력하는 부분이 나올텐데 제대로 입력하시면 이렇게 IIS에 설치된 주소들이 나옵니다.


대충 원하시는걸로 번호를 선택하시고 엔터치시면 자연스럽게 알아서 다 설정을 해주며 IIS에 SSL까지 자동설치 해줍니다

거기에 편하게 자동으로 SSL 갱신을 위한 작업 스케줄러까지 등록이 한방에!



넵 끝났습니다.

너무나도 쉽게 무료로 SSL 발급에서 설치까지 정말로 편합니다.



가끔 안되는 분들이 계실텐데 "localhost\.well-known\acme-challenge\web.config" 파일을 수정 해주셔야합니다.

문제는 letsencrypt.exe 실행시 web.config 파일을 강제로 바꿔버리는 문제가 있습니다.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
<?xml version = "1.0" encoding="UTF-8"?>
 <configuration>
     <system.webServer>
         <staticContent>
             <mimeMap fileExtension = ".*" mimeType="text/json" />
         </staticContent>
         <handlers>
              <add name="StaticFileModule" path="*" verb="*" modules="StaticFileModule" resourceType="File" />
        </handlers>
     </system.webServer>
 </configuration>


문제가 된 부분에 소스는 밑에 주소에 있으며 54~60번줄 사이에 위에 올린 코드에 빠진 부분을 넣으시고 빌드하시면 됩니다.

수정된 파일을 공유하지 않은 이유는 바이러스를 배포하니 안하니 이런 문제를 사전에 막기위해 공유하지 않았으니 직접 빌드하세요.

https://github.com/Lone-Coder/letsencrypt-win-simple/blob/master/letsencrypt-win-simple/Plugin/IISPlugin.cs


제가 해본 결과 Windows Embedded 8.1 Industry Pro, Windows Server 2012 R2에서는 문제 없이 됐습니다.

으.. 쓰기 귀찮다..
사진 몇장 띵띵 올리고 땡칠게요! 괜찮죠!?
여러분은 훌륭한 공돌이니까 괜찮을거에요!

제가 사용하는건 Bonobo Git Server입니다.
웹에서 사용 가능하니 좋더군요 ㅋㅅㅋ.
하지만 몇가지 좀 문제가 있는데 이 문제를 해결하는 방법까지가 이 글의 끝입니다.

일단 서버를 받습니다.
http://bonobogitserver.com/

사실 홈페이지에 Install을 누르시면 아주 자세하게 설치 방법이 나옵니다.
하지만 포스팅을 해야하니 저도 자세하게 써보죠.

자 일단 서버 관리자에 들어가봅시다. 당연히 역할을 추가해야겠죠.



보이시는데로 설치하시면 됩니다. 문제 없어요. 저는 이미 설치되어있구요 ㅇㅅㅇ.

그 다음 다운받은 Bobono git server의 압축을 풀어줍니다.
다 되셨다면 IIS에 추가합니다.
저는 기본경로인 C:\inetpub\wwwroot 에 넣어놓았습니다.

그 다음 제어판 -> 관리도구 -> IIS 관리자를 실행하셔서

Bonobo.Git.Server이라는 녀석을 찾으신 후 응용프로그램으로 변환해 줍시다.

Convert to a web application
이렇게 말이죠. (사진은 Bonobo에서 가져왔습니다. 문제가 된다면 삭제하겠습니다.)


여기까지 하셨다면 Bonobo Git Server에 접속가능합니다.
http://127.0.0.1/Bonobo.Git.Server에 접속해 보세요.
관리자 계정의 아이디는 admin
초기 비밀번호는 admin
입니다.

계정 생성은 admin 계정으로 로그인해야 가능합니다.
또한 Global Setting에 들어가시면 기본 저장소를 변경 가능합니다.

혹시 URL이 너무 길어 보기 싫으시다면 Bonobo Git Server의 기본 폴더명인 Bonobo.Git.Server을 다른걸로 변경해 주시면 됩니다.


완료되셨다면 SSL도 연동시켜보죠.

IIS는 SSL연동이 매우매우 쉽습니다. 인증서 생성 방법은 FTPS구축기를 참고해 주세요.



인증서 선택해 주세요.


SSL 설정 끝!

다음은 권한설정입니다.
디폴트 저장소가 Bonobo.Git.Server/App_Data/Repositories로 되어있으니 이쪽에다가 권한을 줄게요.
디폴트 저장소를 변경하셨다면(git 서버에 admin계정으로 로그인 하시면 Global Setting에서 설정가능 합니다.) 그 저장소에 권한을 설정해주세요.

권한을 줘야 하는 계정 : IIS_IUSRS
필요한 권한 : 읽기 쓰기 실행 수정


자 거의다 왔습니다.
이제 셋팅하는 방법을 알야야겠죠.

이제 클라이언트를 설정하러 가보겠습니다.
개인 인증서를 사용하실 경우에는 SSL 인증서 오류가 뜨는데요, Git도 예외는 아닙니다.

;;git bash
git config --global http.sslVerify false


프로젝트 리소스 파일이 큰 경우에는  Push 할 때 여러가지 에러가 생깁니다.
error: RPC failed; result=56, HTTP code = 0 <-- 요녀석인데요.
이렇게 해결하시면 됩니다.

;;git bash
git config --global http.postBuffer 2M
;;2M은 적당히 수정해주시면 됩니다.

저렇게 설정하니까 이번엔
efrror: RPC Failed; result=22, HTTP code = 404

라는 에러가 말썽을 부린다구요?
postBuffer 크기를 너무 크게 정해서 그렇습니다. 다시 작게 설정하시면 됩니다.
postBuffer 크기가 프로젝트 크기랑 똑같아서 다시 작게 설정 할 수 없다면
<httpRuntime maxRequestLength="[byte]" />
<requestLimits maxAllowedContentLength="[byte]" /> 에서 [byte]를 크게 설정해 주시면 됩니다
error: RPC failed; result=22 HTTP cod=413 라는 에러도 위와 같이 변경해 주시면 해결됩니다.

P.S. 댓글에 누군가 일베한다고 써놨는데 일베, DC, 오유 등등 활동 안합니다.
제가하는건 트위터와 트위터와 트위터밖에 없어요. 일부 알고있는 용어 또한 트위터에서 본겁니다.
혹시나 제 글에서 일부 커뮤니티에서 사용하는 은어가 거슬리면 댓글로 달아주세요. 수정하겠습니다.

힘들고 힘들었네요.

http://orangepark.tistory.com/123

http://jongampark.wordpress.com/2009/11/11/ssh-vs-ssl-%EB%B0%94%EB%B3%B4-%EA%B0%99%EC%9D%80-%EC%84%A4%EB%AA%85/

http://forums.iis.net/t/1163993.aspx/1

http://snoopybox.co.kr/1629

를 참고해서 구축하는데 성공했습니다.


제가 지금부터 적을 내용은 이 모든 내용을 통합해 직접 설정하면서 삽질한 내용입니다.

글 진행은 설명 후 사진 첨부 입니다.
이런 방식이죠.
------설명------
----사진-------
---다른설명--
---다른사진---

시작합니다.

1.FTP를 설치합니다.

저는 이미 설치가 되어있으니 잘 설치해 주세요^^.

2.
FTP 설치를 완료 하신 후, Windows + R (실행 창)에서 InetMgr.exe를 입력하면 IIS 관리자가 나옵니다.
관리도구 - IIS(인터넷 정보 서비스) 관리자 를 실행하셔도 되구요.서버 인증서 -> 자체 서명된 인증서 만들기 -> 이름 입력하시고 개인 선택 후 확인.


3.
FTP 사이트를 추가하기 전 공유기 또는 사내 네트워크를 사용하시는 분은 다음 작업을 해주세요.

완료후 방화벽에 포트 추가하시는거 잊지 마시구요^^ (포트 추가 하는 내용은 생략합니다. 구글링하세요.)

4.
사이트 -> 마우스 우클릭 -> FTP 사이트 추가 -> FTP 사이트 이름 정하시구요 -> FTP로 사용할 폴더를 지정해 주세요.



5.
사용할 유저와 거부할 유저를 설정하시고..

나머지는
FTP SSL 설정에서 SSL 연결에 128비트 암호화 사용하실 분은 사용하시고 사용안하실 분은 안하셔도 됩니다.
디렉터리 검색은 디폴트로 놔도 되고 안놔도 되고..


자 이제 연결해 봅시다. 파일질라를 기준으로 설명해 드립니다.
파일질라를 실행하고, 파일 - 사이트 관리자를 엽니다.
좌측 하단에 새 사이트를 누르시고 이름을 설정하신 뒤, 우측에서 호스트 입력하시고 포트 입력하시고
프로토콜을 FTP - 파일 전송 프로토콜로 설정하신후,
가장 중요한 암호화 방식에서 "TLS를 통한 명시적 FTP 필요" 를 선택해 주시기 바랍니다.
로그온 유형은 일반 또는 비밀번호 묻기로 설정하신 후, 5번 작업에서 추가한 사용자이름을 넣고 비밀번호는 해당 사용자 비밀번호 입니다.
완료후 연결 눌러주시면 됩니다.

정상적으로 연결이 안될 경우 맨 위에 있는 링크를 참고 하시기 바라며,
만약 파일질라에서 "서버가 알 수 없는 주소와 수동형 응답을 보냈습니다. 대신 서버 주소를 사용합니다." 라는 문구를 내뱉으면
3번 작업을 안하신 분 입니다. 위에 올린 링크 중 가장 마지막 링크를 참고해서 해결하시면 됩니다.

연결이 됐으면 업로드를 해봐야겠죠.
하지만 여러분은 아마
"550 The supplied message is incomplete. The signature was not verified." 이라는 문구를 보며 절망에 빠지실 겁니다.
분명히 업로드는 되는데 파일질라가 파일을 삭제한 후, 재 업로드를 시도합니다.
왜이러는걸까요젠장맞을파일질라님아.
실제로 이 현상은 파일질라에서 일어나는 현상이며, CoreFTP라는 FTP클라이언트는 이런 현상이 나타나지 않습니다.
하지만 저는 파일질라를 쓰기 때문에 어떻게든 이 문제를 해결하고 싶었습니다.
애초에 이 글을 쓰고 있는 이유가 이 문제를 해결하기 위한 분들을 위해 작성되었고 말이죠.

이 현상은 TSL 1.1/1.2 연결 방식에서 일어나는 문제입니다.
이 문제를 해결하기 위해선 다음과 같은 작업을 해주시면 됩니다.

로컬 그룹 정책 편집기(Windows + R, gpedit.msc) -> 컴퓨터 설정 -> 관리 템플릿 -> 네트워크 -> SSL 구성 설정 -> SSL 암호 그룹 순서 -> 속성 -> 사용 -> SSL 암호 그룹 텍스트 복사 -> 아무 편집기나 실행해서 붙여넣기 -> TLS_RSA_WITH_RC4_128_SHA, 검색 -> 잘라내기(이때 , 잘 정리해 줄 것) -> 맨 앞에다가 붙여넣기 -> 다시 잘라내서 SSL 암호 그룹 텍스트 박스에 붙여넣기 -> 확인 -> 재부팅 -> 테스트.

+ Recent posts