Bagaimana mengkonfigurasi permintaan dari port lain ke port 443?

0

Saya mencoba mengkonfigurasi https pertama saya, dan saya pikir saya mengerti, tetapi ada masalah: situs tidak akan terbuka di http, hanya https, karena ini, saya ingin mengarahkan semuanya ke https.

Saya menggunakan iptables, dan ini adalah aturan saya: enter image description here

Ini situs web saya: https://pubcrawlsp.com

Bisakah seseorang memberi saya cahaya di sini?

Saya sudah mencoba menggunakan:

iptables -A PREROUTING -t nat -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 443
iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 443 

Saya menggunakan instance EC2, dari layanan web amazon. [Ubuntu]


sumber
Terlepas dari apa yang Anda katakan, sepertinya sekarang situs HTTP Anda tersedia, tetapi port 443 ditutup. Jika demikian, dan Anda belum menggunakan Apache, periksa dokumentasi node.js di nodejs.org/api/https.html .

Jawaban:

4

Anda tidak perlu menggunakan firewall Anda untuk ini, gunakan apache untuk melakukan pengalihan

<VirtualHost *:80> ServerName www.example.com
Redirect / https://www.example.com/
</VirtualHost > 
<VirtualHost *:443> ServerName www.example.com

# ... SSL configuration goes here
</VirtualHost >
Iain
sumber
hm, apakah Anda tahu tutorial yang membantu saya langkah demi langkah Lain? Saya benar-benar tidak tahu cara menggunakan apache
0

Pengguna mungkin tidak mengharapkan port 80 untuk melakukan HTTPS, jadi HTTP redirect menggunakan Apache atau node.js setidaknya akan menjadi lebih konvensional.

Sebagai jawaban atas pertanyaan langsung Anda tentang penerusan iptables, alih-alih REDIRECT, Anda dapat melihat apa yang terjadi jika Anda mencoba

iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to-destination 54.207.73.169:443 

(atau alamat IP apa pun yang ingin Anda gunakan. Localhost akan baik-baik saja jika server terikat padanya.)

Cedric Knight
sumber