Port 443 Tidak Bisa Diakses dari Luar VPS? Ini Cara Diagnosis dan Memperbaikinya

Yusuf
By: Yusuf October Sat 2026
port 443 tidak bisa diakses dari luar VPS

Server Solusi – Website sudah menggunakan SSL, sertifikat HTTPS terpasang, dan web server terlihat berjalan normal. Namun, ketika diakses dari jaringan luar VPS, koneksi justru mengalami timeout atau menampilkan pesan ERR_CONNECTION_REFUSED.

Situasi seperti ini cukup membingungkan, terutama ketika website masih bisa diakses melalui localhost atau ketika saya melakukan pengujian langsung dari dalam server.

Hal yang perlu dipahami adalah bahwa port 443 yang tidak bisa diakses dari luar VPS belum tentu disebabkan oleh sertifikat SSL. Masalahnya bisa berada pada web server, firewall Linux, aturan firewall dari provider VPS, konfigurasi jaringan, atau bahkan alamat IP yang digunakan.

Saya akan menggunakan pendekatan troubleshooting bertahap agar kamu bisa menemukan titik masalah tanpa harus sembarangan mematikan firewall atau mengubah konfigurasi server.

Mengapa Port 443 Tidak Bisa Diakses dari Luar VPS?

Port 443 tidak bisa diakses dari luar VPS biasanya karena tidak ada service yang mendengarkan koneksi HTTPS pada port tersebut, firewall memblokir koneksi masuk, atau provider VPS memiliki aturan jaringan yang belum mengizinkan TCP port 443.

Untuk menemukan penyebabnya, periksa secara berurutan:

  1. Pastikan web server berjalan dan mendengarkan port 443.

  2. Uji koneksi HTTPS dari dalam VPS.

  3. Periksa firewall Linux seperti UFW, iptables, atau nftables.

  4. Periksa firewall eksternal atau security group dari provider VPS.

  5. Periksa konfigurasi virtual host dan binding alamat IP.

  6. Uji koneksi kembali dari jaringan luar.

Jangan langsung menyimpulkan bahwa SSL bermasalah hanya karena HTTPS tidak bisa dibuka. Sertifikat SSL dan konektivitas TCP merupakan dua lapisan yang berbeda.

Memahami Gejala Port 443 yang Tidak Bisa Diakses

Sebelum melakukan perubahan konfigurasi, saya menyarankan kamu memahami jenis kegagalan koneksi yang muncul.

Pesan error dari browser atau terminal bisa memberikan petunjuk awal mengenai lokasi masalah.

A. Connection Refused

Contoh pesan:

curl: (7) Failed to connect to example.com port 443:Connection refused

Artinya, koneksi TCP ditolak oleh tujuan atau perangkat jaringan yang merespons koneksi tersebut.

Beberapa kemungkinan penyebabnya:

Jika mendapatkan pesan ini, periksa terlebih dahulu status web server dan port listening.

B. Connection Timed Out

Contoh pesan:

curl: (28) Failed to connect to example.comport 443 after 10000 ms: Timeout was reached

Timeout menunjukkan bahwa koneksi tidak memperoleh respons yang dibutuhkan dalam batas waktu pengujian.

Penyebab yang perlu diperiksa antara lain:

  • Firewall menjatuhkan paket TCP secara diam-diam menggunakan DROP.

  • Security group provider belum mengizinkan port 443.

  • Routing jaringan mengalami masalah.

  • IP tujuan tidak sesuai.

  • Ada pembatasan jaringan dari sisi provider atau jaringan klien.

Berbeda dengan connection refused, timeout sering mengindikasikan bahwa paket koneksi tidak mendapatkan respons yang semestinya.

Namun, keduanya bukan bukti pasti mengenai lokasi masalah.

C. HTTPS Berhasil dari VPS, tetapi Gagal dari Luar

Ini merupakan kondisi yang cukup penting untuk diperhatikan.

Misalnya, ketika kamu menjalankan:

curl -I https://127.0.0.1

Server memberikan respons HTTP, tetapi ketika website diakses menggunakan browser dari komputer lain, koneksi mengalami timeout.

Kondisi tersebut menunjukkan bahwa web server kemungkinan sudah melayani HTTPS secara lokal.

Pemeriksaan selanjutnya perlu diarahkan pada:

  • Binding alamat IP.

  • Firewall lokal.

  • Firewall provider VPS.

  • Routing jaringan.

  • Perbedaan alamat IP tujuan.

Perlu diingat, keberhasilan mengakses 127.0.0.1 belum membuktikan bahwa web server menerima koneksi melalui public IP.

Memastikan Web Server Mendengarkan Port 443

Langkah pertama yang saya sarankan adalah memeriksa apakah ada proses yang benar-benar mendengarkan koneksi pada TCP port 443.

Masuk ke VPS menggunakan SSH, kemudian jalankan:

sudo ss -tulpen | grep ':443'

Perintah tersebut menggunakan ss untuk menampilkan socket TCP dan UDP, termasuk port yang sedang digunakan oleh service.

Perhatikan bagian Local Address:Port.

Contoh hasil yang mungkin ditemukan:

LISTEN 0 511 0.0.0.0:443 0.0.0.0:* users:(("nginx",pid=1234,fd=6))

Artinya:

Angka PID dan detail output tentu akan berbeda pada setiap server.

Memahami Perbedaan Alamat Listening

Perhatikan beberapa kemungkinan berikut:

Alamat listeningKeterangan
0.0.0.0:443Menerima koneksi IPv4 pada semua alamat lokal
127.0.0.1:443Hanya menerima koneksi melalui loopback IPv4
192.168.1.10:443Hanya mendengarkan alamat IP tersebut
[::]:443Mendengarkan pada alamat IPv6 wildcard

Jika hasilnya menunjukkan:

127.0.0.1:443

Maka ada kemungkinan web server hanya menerima koneksi lokal.

Kamu perlu memeriksa konfigurasi virtual host atau konfigurasi listener agar service juga mendengarkan alamat jaringan yang diperlukan.

Namun, jangan langsung mengubah binding jika server memang sengaja dirancang menggunakan reverse proxy atau arsitektur jaringan tertentu.

Bagaimana Jika Tidak Ada Output?

Jika perintah ss tidak menghasilkan apa pun, kemungkinan tidak ada service yang sedang listening pada port 443.

Periksa status web server yang digunakan.

Untuk Nginx:

sudo systemctl status nginx

Untuk Apache:

sudo systemctl status apache2

Pada distribusi yang menggunakan nama service httpd, seperti beberapa sistem berbasis RHEL:

sudo systemctl status httpd

Untuk OpenLiteSpeed:

sudo systemctl status lsws

Jika service tidak berjalan, jangan langsung melakukan restart berulang kali. Periksa terlebih dahulu alasan kegagalannya melalui log dan validasi konfigurasi.

Menguji HTTPS Langsung dari Dalam VPS

Setelah memastikan service listening, lakukan pengujian koneksi dari sisi server.

Jalankan:

curl -Iv https://127.0.0.1

Opsi yang digunakan:

  • -I: Meminta header HTTP.

  • -v: Menampilkan informasi proses koneksi dan negosiasi TLS.

Perlu diperhatikan bahwa pengujian menggunakan 127.0.0.1 bisa menghasilkan kesalahan sertifikat karena nama host pada sertifikat biasanya bukan alamat loopback.

Untuk menguji domain dengan tetap menggunakan koneksi lokal, gunakan:

curl -Iv --resolve example.com:443:127.0.0.1 https://example.com/

Ganti example.com dengan domain milikmu.

Perintah tersebut mengarahkan domain ke 127.0.0.1 untuk pengujian, tanpa mengubah DNS publik.

Jika mendapatkan respons HTTP seperti:

HTTP/2 200

atau:

HTTP/1.1 301 Moved Permanently

Artinya, server berhasil memproses permintaan HTTPS lokal sampai menghasilkan respons HTTP.

Kode 301, 403, atau 404 bukan berarti koneksi TCP port 443 gagal. Itu merupakan respons dari lapisan HTTP.

Baca JugaCloudflare Error 522: Cara Mencari Penyebab Koneksi ke Server Timeout
Cloudflare Error 522: Cara Mencari Penyebab Koneksi ke Server Timeout

Sebaliknya, jika muncul:

Connection refused

atau:

Connection timed out

Kamu perlu kembali memeriksa service dan konfigurasi jaringan lokal.

Memeriksa Firewall Linux pada VPS

Jika web server sudah listening dan HTTPS berhasil diuji secara lokal, langkah berikutnya adalah memeriksa firewall.

Firewall Linux dapat memblokir koneksi masuk meskipun web server berjalan normal.

Ada beberapa sistem firewall yang umum digunakan pada VPS.

A. Memeriksa UFW

Pada Ubuntu dan Debian, sebagian administrator menggunakan UFW untuk mengelola aturan firewall.

Periksa statusnya:

sudo ufw status verbose

Jika UFW aktif, perhatikan apakah terdapat aturan yang mengizinkan koneksi TCP port 443.

Contoh aturan yang diperlukan:

443/tcp ALLOW IN Anywhere

Jika aturan tersebut belum tersedia, kamu dapat menambahkan izin HTTPS:

sudo ufw allow 443/tcp

Kemudian periksa kembali:

sudo ufw status numbered

Jika VPS menggunakan IPv6, pastikan konfigurasi UFW juga menangani IPv6 sesuai kebutuhan.

Catatan: Jangan mengaktifkan UFW secara sembarangan pada server produksi. Jika UFW sebelumnya tidak aktif dan kamu ingin mengaktifkannya, pastikan akses SSH sudah diizinkan terlebih dahulu agar tidak kehilangan akses remote.

Contohnya:

sudo ufw allow OpenSSH

Sesuaikan aturan tersebut jika SSH menggunakan port khusus.

B. Memeriksa iptables

Tidak semua server menggunakan UFW. Beberapa menggunakan iptables secara langsung atau melalui frontend lain.

Periksa aturan firewall:

sudo iptables -L INPUT -n -v --line-numbers

Untuk melihat aturan NAT:

sudo iptables -t nat -L -n -v

Perhatikan apakah ada aturan yang:

  • Menolak koneksi TCP port 443.

  • Menjatuhkan paket menuju port 443.

  • Mengizinkan hanya alamat IP tertentu.

  • Mengarahkan koneksi ke port atau alamat lain.

Jika server menggunakan IPv6, periksa juga:

sudo ip6tables -L INPUT -n -v --line-numbers

Jangan langsung menghapus aturan yang terlihat mencurigakan. Identifikasi dahulu sumber pengelolaannya karena aturan tersebut mungkin dibuat oleh panel hosting, Docker, atau sistem keamanan lainnya.

C. Memeriksa nftables

Pada distribusi Linux modern, nftables dapat digunakan sebagai sistem firewall.

Periksa aturan aktif:

sudo nft list ruleset

Cari bagian chain yang menangani trafik masuk, khususnya aturan yang berkaitan dengan TCP destination port 443.

Baca JugaCara Mengatasi Let’s Encrypt Challenge Failed pada Server
Cara Mengatasi Let’s Encrypt Challenge Failed pada Server

Misalnya, aturan firewall dapat menggunakan kondisi seperti:

tcp dport 443 accept

Namun, keberadaan aturan ACCEPT tidak otomatis menjamin koneksi berhasil. Urutan chain, hook, policy, dan aturan lain yang dieksekusi juga harus diperhatikan.

Jika kamu menemukan aturan DROP atau REJECT, telusuri terlebih dahulu bagaimana aturan tersebut dibuat sebelum melakukan perubahan.

Memeriksa Firewall dari Provider VPS

Ada satu hal yang sering terlewat ketika melakukan troubleshooting port pada VPS: firewall tidak selalu berada di dalam sistem operasi.

Beberapa penyedia VPS menyediakan firewall eksternal yang bekerja sebelum paket jaringan diteruskan ke mesin virtual.

Artinya, meskipun UFW tidak memblokir port 443 dan web server sudah listening, koneksi dari internet tetap bisa gagal apabila aturan firewall provider menolaknya.

Apa yang Harus Diperiksa?

Masuk ke dashboard provider VPS, kemudian cari fitur dengan nama seperti:

  • Cloud Firewall

  • Network Firewall

  • Security Group

  • Inbound Rules

  • Firewall Rules

Nama dan lokasi menu berbeda-beda tergantung provider.

Pastikan terdapat aturan inbound yang mengizinkan:

ParameterNilai
DirectionInbound
ProtocolTCP
Port443
Source0.0.0.0/0
ActionAllow

Jika website juga harus bisa diakses melalui IPv6, periksa aturan IPv6 dan tambahkan sumber ::/0 sesuai kebutuhan.

Jangan membuka semua port VPS hanya untuk mengatasi masalah HTTPS. Cukup izinkan port dan sumber koneksi yang memang diperlukan.

Mengapa Firewall Provider Perlu Diperiksa?

Misalnya, konfigurasi VPS kamu sudah seperti ini:

  • Nginx berjalan.

  • Port 443 berstatus LISTEN.

  • UFW mengizinkan TCP port 443.

  • HTTPS berhasil ketika diuji dari localhost.

Namun, browser dari jaringan luar tetap mengalami timeout.

Pada kondisi tersebut, firewall eksternal provider menjadi salah satu kandidat pemeriksaan utama.

Jika aturan inbound ternyata belum mengizinkan TCP 443, tambahkan aturan tersebut melalui dashboard provider.

Setelah perubahan diterapkan, lakukan pengujian ulang dari jaringan eksternal.

Memeriksa Konfigurasi HTTPS pada Web Server

Jika firewall sudah diperiksa, tetapi port 443 belum berfungsi, pastikan web server memiliki konfigurasi HTTPS yang benar.

Konfigurasi setiap web server berbeda. Berikut beberapa pemeriksaan yang bisa dilakukan.

A. Jika Menggunakan Nginx

Buka konfigurasi virtual host atau server block yang digunakan domain.

Lokasinya bisa berada di:

/etc/nginx/sites-available/

atau:

/etc/nginx/conf.d/

Lokasi sebenarnya bergantung pada distribusi dan cara instalasi Nginx.

Periksa apakah terdapat konfigurasi seperti:

server {listen 443 ssl;server_name example.com www.example.com;ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;root /var/www/example.com;index index.php index.html;}

Bagian yang paling penting adalah:

listen 443 ssl;

Directive tersebut membuat server block menerima koneksi HTTPS melalui port 443.

Jika konfigurasi hanya menggunakan:

listen 127.0.0.1:443 ssl;

Maka Nginx hanya menerima koneksi pada alamat loopback tersebut.

Sesuaikan binding jika memang diperlukan agar menerima koneksi melalui alamat jaringan VPS.

Setelah melakukan perubahan, validasi konfigurasi:

sudo nginx -t

Jika hasilnya menunjukkan:

syntax is oktest is successful

Konfigurasi berhasil melewati pemeriksaan sintaks.

Selanjutnya, terapkan perubahan:

sudo systemctl reload nginx

Saya lebih menyarankan reload daripada langsung restart untuk perubahan konfigurasi Nginx yang dapat diterapkan tanpa menghentikan service sepenuhnya.

B. Jika Menggunakan OpenLiteSpeed

Pada OpenLiteSpeed, konfigurasi HTTPS menggunakan listener.

Masuk ke WebAdmin Console, kemudian buka:

Listeners

Periksa apakah terdapat listener HTTPS dengan pengaturan berikut:

PengaturanNilai
Listener NameHTTPS
IP AddressANY IPv4
Port443
SecureYes

Pastikan juga listener tersebut sudah memiliki konfigurasi SSL.

Pada bagian SSL, periksa:

Private Key FileCertificate FileChained Certificate

Contoh lokasi sertifikat Let’s Encrypt:

/etc/letsencrypt/live/example.com/privkey.pem
/etc/letsencrypt/live/example.com/fullchain.pem

Jangan menggunakan lokasi contoh tersebut secara mentah. Sesuaikan dengan domain dan lokasi sertifikat yang sebenarnya.

Setelah itu, periksa bagian Virtual Host Mappings untuk memastikan domain sudah dipetakan ke listener HTTPS.

Jika listener belum tersedia, buat listener baru dengan port 443 dan aktifkan opsi Secure.

OpenLiteSpeed memang memisahkan konfigurasi listener, SSL, dan pemetaan virtual host. Karena itu, memiliki sertifikat SSL saja belum menjamin domain sudah bisa menerima koneksi HTTPS.

C. Jika Menggunakan Apache

Pada Apache, pastikan modul SSL tersedia dan konfigurasi virtual host HTTPS sudah dibuat.

Periksa modul SSL:

sudo apachectl -M | grep ssl

Pada Ubuntu atau Debian, kamu juga bisa memeriksa konfigurasi situs:

ls -lah /etc/apache2/sites-enabled/

Contoh virtual host HTTPS:

<VirtualHost *:443>ServerName example.comServerAlias www.example.comDocumentRoot /var/www/example.comSSLEngine onSSLCertificateFile /etc/letsencrypt/live/example.com/fullchain.pemSSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem</VirtualHost>

Pastikan modul SSL sudah aktif dan konfigurasi port 443 tersedia.

Untuk mengaktifkan modul SSL pada Ubuntu atau Debian:

sudo a2enmod ssl

Kemudian validasi konfigurasi:

sudo apachectl configtest

Jika konfigurasi valid, terapkan perubahan:

sudo systemctl reload apache2

Jangan lupa memastikan Apache memang merupakan service yang mengelola port 443. Pada server yang menggunakan reverse proxy, bisa saja port tersebut dikelola oleh service lain.

Memeriksa DNS dan Alamat IP VPS

Masalah port 443 juga bisa terlihat seperti masalah firewall ketika domain ternyata mengarah ke alamat IP yang salah.

Misalnya, kamu memiliki VPS dengan IP publik:

203.0.113.10

Namun, domain justru mengarah ke IP lama:

203.0.113.20

Ketika domain diakses, browser akan mencoba terhubung ke server yang berbeda.

Periksa DNS menggunakan:

dig +short A example.com

Untuk IPv6:

dig +short AAAA example.com

Bandingkan hasilnya dengan IP publik VPS yang sebenarnya.

Kamu juga bisa memeriksa DNS menggunakan:

nslookup example.com

Periksa Record A dan AAAA

Jangan hanya memeriksa record A.

Jika domain memiliki record AAAA, browser yang menggunakan IPv6 mungkin mencoba mengakses alamat IPv6 tersebut.

Sementara itu, web server atau firewall VPS mungkin hanya dikonfigurasi untuk IPv4.

Untuk membandingkan koneksi IPv4 dan IPv6, jalankan dari komputer eksternal:

curl -4 -Iv https://example.com

Kemudian:

curl -6 -Iv https://example.com

Jika IPv4 berhasil tetapi IPv6 gagal, arah pemeriksaan perlu difokuskan pada konfigurasi IPv6.

Periksa:

  • Apakah VPS memiliki IPv6 yang dapat dirutekan dari internet.

  • Apakah web server mendengarkan alamat IPv6.

  • Apakah firewall mengizinkan TCP port 443 melalui IPv6.

  • Apakah record AAAA mengarah ke alamat yang benar.

Jika server memang belum menyediakan layanan IPv6, jangan membiarkan record AAAA yang mengarah ke alamat yang tidak dapat melayani website.

Mengidentifikasi Lokasi Pemblokiran dengan tcpdump

Jika semua pemeriksaan sebelumnya belum menemukan penyebabnya, saya menyarankan menggunakan tcpdump.

Tool ini dapat membantu melihat apakah paket koneksi dari internet benar-benar sampai ke VPS.

Install jika belum tersedia.

Ubuntu atau Debian:

sudo apt install tcpdump

Kemudian jalankan:

sudo tcpdump -ni any 'tcp port 443'

Perintah tersebut memantau trafik TCP yang menggunakan port 443 pada seluruh interface jaringan.

Biarkan terminal tetap berjalan, lalu coba akses website dari komputer atau jaringan lain.

Perhatikan paket yang muncul.

A. Jika Tidak Ada Paket yang Masuk

Misalnya, kamu mencoba mengakses VPS dari luar, tetapi tcpdump tidak menampilkan paket SYN yang ditujukan ke port 443.

Kemungkinan masalah berada sebelum paket mencapai VPS, misalnya:

  • Firewall provider.

  • Security group.

  • Routing jaringan.

  • IP tujuan yang salah.

  • Pembatasan dari jaringan asal.

Namun, pastikan interface yang dipantau benar dan pengujian benar-benar menuju IP VPS tersebut.

B. Jika Paket SYN Masuk, tetapi Tidak Ada Respons

Contoh paket yang terlihat:

CLIENT_IP.54321 > SERVER_IP.443: Flags [S]

Paket tersebut menunjukkan klien mencoba memulai koneksi TCP.

Jika paket SYN terus masuk tetapi server tidak mengirim SYN-ACK atau RST, periksa:

  • Firewall lokal.

  • Kebijakan routing.

  • Binding service.

  • Aturan filtering pada interface atau network stack.

C. Jika Server Mengirim RST

Contoh:

SERVER_IP.443 > CLIENT_IP.54321: Flags [R.]

RST menunjukkan koneksi ditolak atau di-reset.

Salah satu kemungkinan yang perlu diperiksa adalah tidak adanya service yang listening pada alamat dan port tujuan, atau terdapat aturan firewall yang menggunakan REJECT.

D. Jika Terlihat SYN, SYN-ACK, dan ACK

Urutan paket seperti ini:

CLIENT_IP.54321 > SERVER_IP.443: Flags [S]SERVER_IP.443 > CLIENT_IP.54321: Flags [S.]CLIENT_IP.54321 > SERVER_IP.443: Flags [.]

Menunjukkan proses TCP three-way handshake berhasil.

Artinya, konektivitas TCP sudah terbentuk. Jika browser masih menampilkan error, pemeriksaan berikutnya harus diarahkan pada TLS, konfigurasi HTTPS, atau lapisan HTTP.

Untuk menghentikan tcpdump, tekan:

CTRL + C

Pemeriksaan ini sangat membantu karena kamu tidak lagi hanya menebak apakah firewall memblokir koneksi. Kamu bisa melihat paket yang benar-benar diterima dan dikirim oleh server.

Memeriksa Log Web Server

Jika koneksi TCP sudah berhasil tetapi HTTPS masih bermasalah, periksa log web server.

Log dapat membantu menemukan masalah seperti sertifikat tidak terbaca, konfigurasi SSL salah, atau virtual host gagal dimuat.

Nginx

Periksa error log:

sudo tail -n 100 /var/log/nginx/error.log

Pantau log secara langsung:

sudo tail -f /var/log/nginx/error.log

Apache

Pada Ubuntu atau Debian:

sudo tail -n 100 /var/log/apache2/error.log

OpenLiteSpeed

Lokasi log bergantung pada konfigurasi instalasi. Lokasi yang umum digunakan:

/usr/local/lsws/logs/error.log

Periksa menggunakan:

sudo tail -n 100 /usr/local/lsws/logs/error.log

Jika menemukan pesan seperti:

Unable to load certificate

atau:

SSL_CTX_use_PrivateKey_file failed

Fokus pemeriksaan pada lokasi sertifikat, private key, permission file, dan kecocokan pasangan sertifikat dengan private key.

Jika tidak ada error pada log, bukan berarti seluruh konfigurasi sudah benar. Kegagalan koneksi yang terjadi sebelum mencapai web server memang belum tentu tercatat dalam error log aplikasi.

Memastikan Port 443 Sudah Bisa Diakses dari Luar VPS

Setelah melakukan perubahan, jangan langsung menganggap masalah selesai.

Lakukan pengujian dari komputer atau jaringan yang berbeda dari VPS.

A. Menguji Koneksi TCP

Jika tersedia nc atau Netcat, jalankan:

nc -vz -w 5 203.0.113.10 443

Ganti alamat IP dengan IP publik VPS kamu.

Jika berhasil, hasilnya kurang lebih:

Connection to 203.0.113.10 443 port [tcp/https] succeeded!

Ini menunjukkan koneksi TCP menuju port 443 berhasil dibuat.

B. Menguji HTTPS

Selanjutnya, jalankan:

curl -Iv https://example.com

Perhatikan apakah proses TLS berhasil dan server memberikan respons HTTP.

Beberapa kemungkinan hasil:

HasilInterpretasi
HTTP 200Server memberikan respons sukses
HTTP 301 atau 302Server melakukan redirect
HTTP 403Permintaan ditolak pada lapisan HTTP
HTTP 404Resource tidak ditemukan
SSL certificate errorAda masalah validasi sertifikat
Connection refusedKoneksi ditolak
Connection timed outKoneksi tidak memperoleh respons tepat waktu

Perlu diingat, mendapatkan HTTP 403 atau 404 tetap menunjukkan bahwa koneksi TCP dan HTTPS sudah mencapai tahap pemrosesan HTTP.

C. Menguji Menggunakan Browser

Terakhir, buka:

https://example.com

Pastikan:

  • Website dapat diakses melalui HTTPS.

  • Tidak muncul pesan koneksi gagal.

  • Sertifikat SSL valid untuk domain.

  • Browser tidak mengalami redirect berulang.

  • Website memberikan respons sesuai konfigurasi yang diharapkan.

Jika semuanya berjalan normal, berarti konektivitas port 443 sudah berfungsi dari sisi pengujian tersebut.

Ringkasan Diagnosis Berdasarkan Gejala

Agar kamu tidak perlu mengulang semua pemeriksaan dari awal, gunakan tabel berikut untuk menentukan arah troubleshooting.

GejalaPemeriksaan utama
Tidak ada output ssStatus web server dan konfigurasi listener
Listening hanya di 127.0.0.1Binding alamat IP
Localhost berhasil, luar timeoutFirewall lokal, provider, dan routing
Paket SYN tidak sampai ke VPSFirewall eksternal atau jaringan
Paket SYN masuk tetapi tidak ada responsFirewall lokal dan network stack
TCP berhasil, TLS gagalSertifikat dan konfigurasi SSL
IPv4 berhasil, IPv6 gagalBinding IPv6, firewall, dan DNS AAAA
HTTP 403 atau 404Konfigurasi virtual host dan aplikasi

Tabel ini merupakan panduan untuk menentukan pemeriksaan berikutnya, bukan penetapan penyebab secara otomatis.

Cara Mencegah Port 443 Kembali Bermasalah

Setelah HTTPS berhasil diakses, ada beberapa hal yang sebaiknya kamu perhatikan agar masalah serupa tidak mudah terulang.

A. Dokumentasikan Aturan Firewall

Catat aturan firewall yang digunakan, termasuk:

  • Port yang dibuka.

  • Protokol yang digunakan.

  • Alamat IP yang diizinkan.

  • Firewall yang mengelola aturan tersebut.

  • Aturan firewall dari provider VPS.

Dokumentasi ini akan membantu ketika kamu melakukan migrasi server atau perubahan konfigurasi jaringan.

B. Backup Konfigurasi Web Server

Sebelum mengubah konfigurasi Nginx, Apache, atau OpenLiteSpeed, buat salinan file terlebih dahulu.

Contoh:

sudo cp /etc/nginx/nginx.conf /etc/nginx/nginx.conf.backup

Sesuaikan lokasi file jika menggunakan konfigurasi berbeda.

Dengan demikian, kamu memiliki salinan konfigurasi sebelumnya apabila perubahan menyebabkan service gagal berjalan.

C. Validasi Sebelum Reload atau Restart

Biasakan melakukan pemeriksaan konfigurasi sebelum menerapkan perubahan.

Nginx:

sudo nginx -t

Apache:

sudo apachectl configtest

Jangan melakukan reload atau restart ketika konfigurasi belum valid.

D. Pantau Status Service

Kamu bisa memeriksa status web server secara berkala.

Contoh untuk Nginx:

systemctl is-active nginx

Untuk OpenLiteSpeed:

systemctl is-active lsws

Jika hasilnya active, service sedang berstatus aktif menurut systemd. Namun, status tersebut belum menjamin port 443 dapat diakses dari internet.

Karena itu, pemantauan service sebaiknya dikombinasikan dengan pemeriksaan port dan pengujian HTTPS eksternal.

E. Perhatikan Perubahan DNS dan IP VPS

Jika kamu mengganti IP VPS, pastikan record DNS A dan AAAA diperbarui sesuai konfigurasi jaringan baru.

Jangan menganggap perubahan IP hanya memengaruhi DNS. Firewall provider, binding web server, dan konfigurasi IPv6 juga mungkin perlu disesuaikan.

FAQ Seputar Port 443 Tidak Bisa Diakses dari Luar VPS

1. Kenapa port 443 tertutup padahal SSL sudah terpasang?

Karena sertifikat SSL tidak otomatis membuat web server mendengarkan port 443. Kamu tetap membutuhkan konfigurasi HTTPS listener atau virtual host, serta aturan firewall yang mengizinkan koneksi masuk.

2. Bagaimana cara membuka port 443 di Ubuntu VPS?

Jika menggunakan UFW, jalankan:

sudo ufw allow 443/tcp

Kemudian periksa:

sudo ufw status

Pastikan firewall provider VPS juga mengizinkan inbound TCP port 443.

3. Apa perbedaan port 443 connection refused dan timeout?

Connection refused menunjukkan koneksi ditolak oleh tujuan atau perangkat jaringan yang merespons. Sementara timeout menunjukkan koneksi tidak mendapatkan respons yang dibutuhkan dalam batas waktu pengujian.

Keduanya bisa disebabkan oleh konfigurasi jaringan yang berbeda sehingga perlu diperiksa lebih lanjut.

4. Apakah port 443 harus dibuka jika website menggunakan Cloudflare?

Tergantung mode koneksi Cloudflare yang digunakan.

Jika menggunakan proxy Cloudflare, koneksi dari Cloudflare menuju origin server tetap harus dapat menjangkau port HTTPS yang digunakan. Jika origin menggunakan HTTPS pada port 443, port tersebut harus diizinkan untuk alamat IP Cloudflare.

Untuk keamanan, kamu dapat membatasi akses origin hanya dari IP Cloudflare apabila memang seluruh trafik website harus melewati proxy tersebut.

5. Apakah port 443 bisa digunakan oleh dua web server sekaligus?

Tidak pada kombinasi alamat IP dan port yang sama secara normal.

Misalnya, Nginx dan Apache tidak dapat secara bersamaan melakukan binding biasa pada 0.0.0.0:443.

Jika ingin menggunakan keduanya, kamu dapat mengatur salah satunya sebagai reverse proxy, kemudian meneruskan permintaan ke web server lainnya melalui port internal yang berbeda.

Penutup

Ketika port 443 tidak bisa diakses dari luar VPS, jangan langsung menyalahkan SSL atau mematikan firewall. Mulailah dengan memastikan web server benar-benar listening pada port 443, kemudian uji HTTPS secara lokal dan periksa aturan firewall Linux serta firewall provider.

Jika pemeriksaan tersebut belum menemukan penyebabnya, gunakan tcpdump untuk melihat apakah paket TCP dari luar benar-benar sampai ke VPS.

Dengan pendekatan tersebut, kamu bisa membedakan masalah pada web server, konfigurasi SSL, firewall, DNS, maupun jaringan tanpa harus melakukan perubahan konfigurasi secara acak.

Jika port 443 masih tidak bisa diakses setelah seluruh pemeriksaan dilakukan, kumpulkan hasil ss, status firewall, pengujian curl, dan tangkapan tcpdump. Informasi tersebut akan jauh lebih membantu ketika melakukan investigasi lanjutan.

Referensi Teknis

Dokumentasi berikut dapat digunakan untuk mempelajari konfigurasi dan perilaku komponen yang dibahas dalam artikel:

 

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *