자체 서명 된 인증서가있는으로 일부 HTTPS 서버를 만들었습니다. 다음 줄에 Java에서 호스트 주소 변경
socket::connect fails with error code = 10049
은 내가 발견
CN=hostname
에 새로운 인증서를 생성 (컴퓨터 이름입니다) : 나는 클라이언트를 시작하고 때, 그것은 나에게 약간의 바인딩-예외를 알려줍니다
hostname = InetAddress.getLocalHost());
하지만이 방법은 실용적이지 않습니다. example.com
과 같은 URL로 인증서를 하나 만들고이 인증서를 두 번 이상 사용하고 싶습니다. 그래서 내가 생각 다음했다 :
127.0.0.1 example.com
을 그리고 나는 URL example.com
을 사용하고 있습니다 :이와/etc/hosts 파일 파일에 일부 URL을 추가.
InetAddress.getLocalhost를 변경할 수있는 방법이 있습니까? 또는 일부 고객의 IP 주소 주문 호스트 이름을 사용할 수 있습니까?
InetSocketAddress address = new InetSocketAddress("test.com",9999);
는 고객의 주소를 만들 수 있지만, 이것은 바인딩-예외가 해결되지 :
은 내가 사용하고 있습니다.
누군가에게 아이디어가 있습니까?
를 사용하려고/q/7576217/608639) 및 [localhost 용 제 3 자 서명 SSL 인증서 또는 127.0.0.1?](https://stackoverflow.com/q/6793174/608639) – jww
***'CN = www.example.com '*** 아마 틀렸다. 호스트 이름은 항상 * SAN *에 있습니다. * CN *에있는 경우, * SAN *에도 있어야합니다 (이 경우 두 번 나열해야합니다). 자세한 규칙 및 이유는 [인증 기관의 인증서 서명 요청 서명 방법] (http://stackoverflow.com/a/21340898/608639) 및 [openssl을 사용하여 자체 서명 된 인증서를 만드는 방법] (http://stackoverflow.com/q/10175812/608639) 또한 자체 서명 된 인증서를 적절한 트러스트 스토어에 배치해야합니다. – jww