오케스트레이터를 직접 설치하여 운영하실 때 trusted CA가 발급한 인증서를 구매하여 사용하시기를 권장합니다만, 여러가지 현실적인 이유로 불가피하게 self-signed 인증서를 사용해야 할 경우가 있습니다.
위와 같이 IIS의 "서버 인증서"에서 “자체 서명된 인증서 만들기” 메뉴를 이용하여 인증서를 만들면 인증서의 CN 값을 우리가 지정할 수 없고 자동으로 윈도우즈 호스트명이 CN 값으로 지정됩니다. 이렇게 인증서의 CN 값에 FQDN(Fully Qualified Domain Name)이 아닌 호스트명만 있으면 이 인증서로 인증되는 오케스트레이터에 로봇을 연결할 때 윈도우즈의 host 파일에 항목을 추가해주어야 합니다.
예를 들어, 오케스트레이터가 설치된 머신의 호스트명이 “devserver” 이고 ip 주소가 192.168.0.100 이라면 로봇 PC의 윈도우즈 호스트 파일에 아래와 같은 라인을 추가해주어야 로봇을 연결할 수 있습니다.
192.168.0.100 devserver
이 호스트가 네임서버에 등록되어 있어서 FQDN으로 접근할 수 있더라도, IIS 인증서의 CN 필드가 호스트명만 가지고 있기 때문에 호스트명으로만 서버를 인증하게 되어서 그렇습니다. 아래와 같이 openssl 커맨드로 CN 필드에 FQDN을 온전히 입력하여 인증서를 만들 수 있습니다. Git Bash를 사용하면 윈도우즈에서도 openssl 커맨드를 사용할 수 있습니다. Git - Downloads 에서 다운로드하여 설치할 수 있습니다.
오늘부터 365일 동안 유효한 인증서를 “certificate.pfx” 라는 이름으로 생성하려면 먼저 아래의 커맨드를 실행해야 합니다.
openssl req -newkey rsa:2048 -nodes -keyout key.pem -x509 -days 365 -out certificate.pem
아래와 같이 입력할 때 Common Name에 FQDN을 입력하시면 됩니다.
Generating a 2048 bit RSA private key
.............................+++
.....................................................................+++
writing new private key to 'key.pem'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:
State or Province Name (full name) [Some-State]:
Locality Name (eg, city) []:
Organization Name (eg, company) [Internet Widgits Pty Ltd]:
Organizational Unit Name (eg, section) []:
Common Name (e.g. server FQDN or YOUR name) []:devserver.mydomain.com
Email Address []:
두 번째로 아래의 커맨드를 실행해야 합니다.
openssl pkcs12 -export -out certificate.pfx -inkey key.pem -in certificate.pem
만약 이 커맨드가 종료되지 않고 오랫동안 반응이 없으면 아래와 같이 winpty 커맨드를 앞에 추가하여 시도해 보시기 바랍니다.
winpty openssl pkcs12 -export -out certificate.pfx -inkey key.pem -in certificate.pem
이렇게 생성된 인증서를 IIS에서 import 한 후, 아래와 같이, “UiPath Orchestrator” 사이트의 바인딩에 적용해주면 됩니다.
이 오케스트레이터에 연결할 로봇 PC에서도 Microsoft Management Console (mmc.exe) 을 이용하여 "컴퓨터 계정"에 인증서를 설치해주면 호스트 파일을 수정하지 않고도 로봇을 오케스트레이터에 연결할 수 있습니다.