Sertifikat SSL untuk alamat IP publik?


10

Saya baru saja mencoba membeli Comodo Positive SSL tetapi ditolak karena tidak mendukung alamat IP publik, tetapi mereka hanya mendukung nama domain.

Adakah yang tahu penyedia sertifikat SSL yang mendukung alamat IP publik alih-alih nama domain?

Perusahaan saya memiliki server khusus yang di-host dengan perusahaan hosting web, yang digunakan untuk menjalankan bugtracker untuk beberapa proyek (untuk banyak klien). Karena ini hanya digunakan untuk bugtracker, kami tidak memerlukan nama domain (klien kami mengaksesnya dengan mengetik IP publik di browser mereka).


2
Saya akan mengatur nama domain sehingga Anda tidak harus mengingat alamat IP ketika Anda berada di lokasi di mana Anda tidak menandainya. Plus, ketika Anda mengubah IP itu akan transparan.
Mark Wagner

Jawaban:


16

Saya pikir Anda bisa melakukan ini, tetapi bukan cara Anda mencoba melakukannya.

Sertifikat SSL adalah pernyataan yang mengikat kunci enkripsi publik ke struktur X.500 yang mencakup elemen CN, atau Common Name; sertifikat yang ditandatangani adalah salah satu yang mengikatnya diverifikasi oleh otoritas sertifikasi pihak ketiga, menggunakan kunci publik yang sudah diketahui pengguna akhir (tumpukan sertifikat Otoritas Sertifikasi (CA) yang tinggal di dalam browser Anda).

Saat Anda mengunjungi situs web yang dilindungi SSL dengan browser, CN yang ditandatangani akan diketahui oleh browser. Apa yang browser pilih untuk lakukan adalah terserah browser. Peramban yang saya sadari membandingkannya dengan nama host yang diminta, dan kesalahan jika berbeda (atau jika penjilidan bersertifikasi itu tidak tahan terhadap analisis, misalnya sertifikat penandatanganan tidak dikenal ke peramban atau penjilidan keluar). of-date, tapi itu masalah yang berbeda). Tidak ada yang pada prinsipnya menghentikan Anda dari mendapatkan sertifikat yang ditandatangani secara publik di mana CN adalah alamat IP bukan FQDN (nama domain yang memenuhi syarat penuh) [1], tetapi itu tidak akan secara ajaib membuat browser membandingkan CN dengan IP dengan IP alamat, bukan dengan nama host yang diminta .

Saya menduga cara paling sederhana untuk menyelesaikan masalah Anda adalah dengan memulai CA Anda sendiri, yang mudah dilakukan, dan ada banyak tutorial umum tentang; satu di sini . Setelah pengguna akhir Anda mengimpor CA Anda ke browser mereka, semua sertifikat yang Anda mint akan diterima sebagai yang berwenang.

Anda mungkin memiliki masalah kedua karena Anda ingin menjalankan banyak situs NameVirtualHost pada satu alamat IP. Ini secara historis tidak dapat diatasi, karena (tidak seperti TLS) negosiasi SSL terjadi sebelum hal lain dalam suatu koneksi; yaitu, CN yang tertanam dalam sertifikat Anda diketahui, dan digunakan oleh, klien sebelum klien dapat mengatakan host apa yang mereka coba sambungkan.

Baru-baru ini, ekstensi protokol yang disebut SNI (Server Name Indication) tampaknya telah diperkenalkan, yang memungkinkan klien dan server untuk menunjukkan bahwa mereka ingin melakukan beberapa hal nama host sebelum sertifikat SSL disajikan, memungkinkan hak satu set sertifikat yang akan diberikan oleh server. Tampaknya ini membutuhkan apache 2.2.10, versi OpenSSL yang cukup baru, dan ( penting ) dukungan sisi klien.

Jadi jika saya harus melakukan apa yang Anda coba lakukan, saya akan melihat mencetak sertifikat CA saya sendiri, memberi tahu pengguna akhir saya bahwa mereka harus menggunakan browser yang mendukung SNI dan mengimpor sertifikat root CA saya, dan memotong dan menandatangani sertifikat SSL saya sendiri untuk setiap situs bugtrack.

[1] OK, Anda mungkin tidak menemukan orang yang akan melakukannya, tetapi itu adalah detail implementasinya. Apa yang saya coba tunjukkan di sini adalah bahwa bahkan jika Anda melakukannya, itu tidak akan menyelesaikan masalah Anda.


4
Untuk aplikasi tertentu, mengapa tidak? Jika itu dicetak oleh penyedia aplikasi, dan Anda tidak mempercayainya, Anda tetap tidak setuju dengan aplikasi ini, karena ia memiliki kunci SSL pribadi dan dapat mendekripsi segala hal. dan jika itu sangat mengkhawatirkan mereka, ia hanya dapat memotong sertifikat yang ditandatangani sendiri untuk masing-masing situs buqtrack-nya, dan mereka dapat mengimpornya berdasarkan kebutuhan.
MadHatter

2
@ Tom - jika Anda tidak mempercayai orang yang menawarkan sertifikat pada Anda di contoh di atas, mengapa Anda bahkan melakukan bisnis dengan mereka? Apakah sertifikat SSL dikeluarkan oleh / dengan dukungan dari / CA yang dikenal adalah kekhawatiran WRT yang paling Anda khawatirkan jika Anda mempercayakan data ke aplikasi 'online'.
Rob Moir

2
Saya kira ketakutannya adalah karena sepertinya tidak ada cara untuk menginstal CA sebagai otoritatif hanya untuk domain tertentu, setelah mereka menginstal root CA saya, saya dapat mengesahkan situs perbankan online semudah aplikasi pelacakan bug saya sendiri. Jika saya dapat meracuni cache DNS mereka, saya kemudian dapat melakukan serangan man-in-the-middle pada perbankan online mereka. Jika ini benar-benar membuat mereka khawatir dan mereka tidak ingin menggunakan browser khusus untuk proyek ini, maka seperti yang saya katakan di atas, saya dapat memotong sertifikat yang ditandatangani sendiri untuk setiap bugtracker individu, yang dapat dipasang oleh klien sesuai kebutuhan.
MadHatter

1
Tom, aku benar-benar setuju dengan yang alasan untuk ingin menggunakan 'terpercaya' cert. Sebenarnya saya setuju dengan itu 100%. Namun, bukan itu komentar awal Anda.
Rob Moir

1
Nama domain menyala? Bahasa ibu saya bukan bahasa Inggris, jadi bisakah Anda menjelaskannya? Juga, bos saya lebih suka menggunakan IP publik, mungkin dia tidak ingin situs itu ditemukan oleh mesin pencari (dapatkah mesin pencari menemukan situs itu meskipun tidak memiliki nama domain?)
mesin seri

10

Ada satu Root Certificate Authority yang saya tahu yang sudah diisi sebelumnya dengan semua browser utama dan mengeluarkan sertifikat SSL pada alamat IP publik: lihat GlobalSign . Mereka membacakan informasi RIPE untuk memvalidasi permintaan sertifikat Anda, jadi Anda mungkin ingin memeriksa dulu bahwa entri RIPE dikeluarkan dengan nama yang benar.

Berkenaan dengan umpan balik, entri ini mendapatkan:

Ya , lebih baik untuk membeli nama domain dan mengeluarkan sertifikat SSL pada CN itu. Ini juga lebih murah daripada opsi GlobalSign di atas.

Tapi , ada kasus di mana sertifikat SSL dengan IP publik sebagai CN berguna. Banyak penyedia dan pemerintah internet memblokir situs yang tidak diinginkan berdasarkan infrastruktur DNS. Jika Anda menawarkan beberapa jenis situs yang kemungkinan besar akan diblokir, misalnya karena alasan politik, itu adalah pilihan yang baik untuk membuat situs ini dapat diakses melalui alamat IP publiknya. Pada saat yang sama, Anda akan ingin mengenkripsi lalu lintas untuk para pengguna tersebut dan Anda tidak ingin pengguna non-teknologi Anda melalui kerumitan mengklik melalui peringatan pengecualian keamanan browser mereka (karena CN sertifikat tidak cocok yang sebenarnya dimasukkan). Membuat mereka menginstal Root CA Anda sendiri bahkan lebih merepotkan dan tidak realistis.


Khususnya, "server khusus yang di-host dengan perusahaan hosting web" hampir tidak akan memiliki entri RIP sendiri, tetapi jaringan di sekitarnya akan memiliki entri RIPE (tentang perusahaan hosting)
Hagen von Eitzen

1

Silakan membeli nama domain. Mereka murah, jangan lebih murah dari itu. Anda hanya butuh satu. Mungkin bahkan baru saja mengatur bugtracker.yourcompany.com.

Lalu untuk setiap bugtracker, siapkan subdomain untuk nama itu. Dapatkan sertifikat SSL untuk masing-masing subdomain tersebut. Karena Anda tampaknya sangat menolak biaya, perusahaan yang ingin Anda lakukan bisnisnya disebut StartSSL.

http://www.startssl.com/

Alasan Anda ingin menggunakannya adalah karena (selain dipercaya oleh browser utama) sertifikat mereka tidak dikenakan biaya lengan dan kaki. Jenis sertifikat paling dasar adalah benar-benar, jujur, bebas-sial. Mereka memverifikasi identitas Anda, kemudian membiarkan Anda mengeluarkan sebanyak yang Anda butuhkan. Jika Anda ingin sertifikat yang lebih bagus (yang biasanya berharga beberapa ratus dolar), Anda mencari sekitar $ 50 selama 2 tahun untuk mendukung SSL untuk banyak domain pada satu IP.

Mereka sangat murah untuk apa yang Anda dapatkan. Mereka mengeluarkan sertifikat nyata, dipercaya oleh browser klien Anda, dan bukan uji coba 90 hari seperti yang dilakukan tempat lain.


1
Kurasa aku juga tidak mengerti itu. Sertifikat SSL yang dikeluarkan dengan benar adalah token pengidentifikasi dengan sendirinya; otoritas sertifikasi tidak menyediakan layanan apa pun setelah masalah. Situs saya diamankan dengan sertifikat RapidSSL, tetapi jika mereka bangkrut besok, sertifikat saya akan sama efektifnya dengan sekarang.
MadHatter

2
Berapa banyak klien Anda yang akan melakukan pemeriksaan latar belakang penuh pada penyedia SSL Anda? Mereka benar-benar harus menggali sebelum mereka menyadari bahwa mereka melakukan bisnis dengan perusahaan yang melakukan bisnis dengan perusahaan Israel. Seperti yang dikatakan MadHatter, ketidakstabilan politik tidak ada hubungannya dengan apakah sertifikat Anda valid atau tidak. Setelah dikeluarkan, itu berlaku sampai habis, berhenti penuh. Tapi itu keren jika Anda ingin membayar uang pendaftaran lain untuk sesuatu yang tidak rumit secara teknis. Sertifikat SSL adalah salah satu penipuan paling konyol yang pernah ada.
Paul McMillan

2
Hei, yang diperlukan hanyalah satu klien untuk meledakkannya. Maaf karena saya tidak begitu jelas dari awal. Negara saya tidak mengizinkan warganya melakukan bisnis dengan Israel. Itu saja.
mesin serial

1
Ya, itu akan menjadi hal yang lebih berguna untuk dikatakan. Sertifikasi SSL tidak perlu mahal, tetapi pada skala melakukan bisnis, biayanya hampir tidak ada.
Paul McMillan

2
"Setelah dikeluarkan, itu valid sampai habis, berhenti penuh". Kecuali jika itu berisi info pencabutan, dicabut, dan klien memberlakukan pemeriksaan pencabutan. Dan CA yang berada di bawah mungkin akan dipaksa untuk mencabut semua sertifikat mereka. Just sayin '
Ryan Bolger
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.