2017-11-23 1 views
1

사용자가 자신의 웹 사이트를 만들 수있는 웹 응용 프로그램을 만들고 있습니다. 사용자는이 사이트에서 자신의 도메인 이름을 가리킬 수 있습니다. 응용 프로그램의 프로토 타입이 이미 있습니다. Apache는 모든 호스트 이름에 대한 요청을 허용하고 실제 도메인 매핑 및 해결은 응용 프로그램 수준에서 발생합니다 (간단한 데이터베이스 조회는 요청 된 호스트 이름과 일치하는 사이트를 점유합니다).웹 응용 프로그램에서 사용자 제공 SSL 인증서를 지원하는 방법

내가 막힌 곳은 사용자의 SSL 인증서가이 방정식에 어떻게 맞을 수 있는지입니다. 사용자가 응용 프로그램이 호스트 이름에 대한 보안 HTTP 요청을 성공적으로 처리 할 수 ​​있도록 SSL 인증서를 업로드 할 수있게하려면 어떤 단계가 필요합니까? 이 응용 프로그램만으로도 처리 할 수있는 것입니까?

답변

1

나는 당신이 당신의 응용 프로그램에서만 이것을 처리 할 수 ​​없다고 생각합니다. 중개 CA 회사이거나 사용자의 도메인 SSL 인증서를 가져 와서 사용자 도메인에 서명 할 수 없다는 점을 제외하고는 CA 문제입니다.

0

자신의 서버 (또는 유료 공유 서버 호스팅 계정)에서 자신의 WordPress 또는 다른 사이트를 설정하는 대신 일반 사용자와이 시스템의 웹 사이트를 만드는 IMHO 사용자가 훨씬 더 많습니다. , 올바른 SSL 인증서을 설치하는 방법을 모를 것이므로 안전하게 설치할 수 있으므로 설치할 수 없으므로 결코 문제가되지 않을 것입니다.

그러나 정확히 필요한 것을 수행하려면 Let's Encrypt을 사용할 수 있어야합니다. 도메인을 추가하는 과정의 일부로 도메인이 서버를 가리키면 (사용자가 도메인 등록 기관에서이를 수행하는 방법을 파악해야 함) Let 's Encrypt 인증서를 만들어 유효성을 검사 할 수 있습니다. 내가 가장 좋아하는 웹 호스팅 회사 (관련이 없으므로 이름을 지정하지 않을 것입니다. 누구나 쉽게이 작업을 수행 할 수 있습니다)는이 기능을 제어판의 일부로 제공합니다. 그들은 또한 몇 년 동안 가지고있는 것처럼 큰 발행인 중 몇 명과 함께 유료 인증서를 제공하지만 대부분의 소규모 사이트에서 Let 's Encrypt는 매우 효과적이며 완전히 무료입니다. 설치에는 문자 그대로 단 1 분이 소요됩니다. 핵심은 사용자가 도메인을 가리킬 수 있도록 먼저 IP 주소 또는 CNAME을 제공해야한다는 것입니다. 도메인이 서버로 확인되면 Let 's Encrypt 인증서를 얻을 수 있습니다.

+0

인증서가 어디서 왔는지에 대한 질문은 실제로는 별개입니다. 이미 Let 's Encrypt를 잠재적 솔루션으로 논의했습니다. 내 질문에 대한 인증서를 설치하는 방법에 대한 자세한 내용은 각 도메인에 대한 별도의 아파치 가상 호스트가 존재하지 않는다는 것을 염두에 두어야합니다. –

+0

@SamHastings 요점은 사용자가 인증서를 업로드하거나 설치하지 않는다는 것입니다. 시스템은 Let 's Encrypt 도구를 사용하여 사용자 대신에 인증서를 요청, 검증 및 Apache에 설치합니다. 그들은 이름으로 만 "사용자 SSL 인증서"가 될 것입니다 - 사용자가 실제로 제공하지는 않습니다. 지금까지 별개의 가상 호스트에 대해서, 나는 Encrypt가 실제로 당신을 대신해 처리 할 수 ​​있다고 생각하지만, 현 시점에서 나는 기존 서버에 다른 도메인을 추가하려고 노력하고 있기 때문에 때로는 혼란 스러울 수도 있습니다. – manassehkatz

관련 문제