I am working on a Facebook bot app and one of their requirements is to setup a webbook on my webserver that is returning a token, to validate my account. I quickly spin up a micro instance (Ubuntu) and created a web server (Express.js, Node.js, Nginx (proxy_pass)) .

I allowed port 443 in the inbound traffic of the security group on this server.

The problem is they require HTTPS enabled on the webhook endpoint.

Does anyone has an idea how I can make this happen with the normal AWS DNS they provide you, without needing to setup a domain and my own SSL cert?

so that this would work:


  • Put Cloudfront in front of it. – ceejayoz Jun 22 '16 at 17:26
  • Alternatively, get free SSL certificate with Let's Encrypt. – ceejayoz Jun 22 '16 at 17:42
  • And I would configure my Nginx with that free SSL cert? – BausNauf Jun 22 '16 at 17:48
  • 1
    Thanks! Just for clarification. I do need the SSL cert also if I am not intending to hook up my instance with a top level domain? and rather just use the AWS public DNS? – BausNauf Jun 22 '16 at 17:55
  • 1
    SSL has absolutely nothing to with DNS. – ceejayoz Jun 22 '16 at 18:27

You can continue using the domain name you from from AWS, but you can't avoid using externally issued SSL certs. Trusted SSL certificates, can be only issed by external entities, the one you make for yourself will not make it.

| improve this answer | |
  • I understand. I am beginner in terms of HTTPs and SSL and my problem is that I thought the SSL cert needs to be attached to a domain that I own, but if I understand you correctly I can also use the domain name from AWS when setting up my SSL cert, right? – BausNauf Jun 27 '16 at 9:53
  • if you don't want to have an own domain name, you can request a cert on the aws one – asdmin Jun 27 '16 at 10:44

you can get a free ssl cert issued by startssl. it works well with EC2 and easy to setup.



| improve this answer | |
  • thanks for your reply. To understand you correctly, that means I have to setup the ssl cert for my own domain right? I was hoping that I can enable HTTPS for the URL that Amazon give me (like this one ec2-52-90-117-111.compute-1.amazonaws.com ). Heroku supports Https by default and I thought AWS offers something similar. – BausNauf Jun 27 '16 at 9:47
  • Sorry this setup is a bit confusing for me. I am new in this dev ops world :) To rephrase: Amazon provides some URL for my instance. My instance is a https server (nginx) that listens for port 80 and not 433 yet. I understand that I have to configure nginx for SSL, which requires a SLL cert right? I always thought I need to issue the SSL to some sort domain? – BausNauf Jun 27 '16 at 9:50
  • @BausNauf Putting a domain name or a IP inside is up to you and depends on your use case, requirements, etc. – gf_ Jun 27 '16 at 9:54

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.