
Hai Habr! Dalam artikel ini, kami ingin menyoroti beberapa masalah SIP saat digunakan pada perangkat seluler, yang biasanya tidak disadari atau tidak disadari oleh pengguna.
Salah satu masalah utama - jika Anda menggunakan penyedia SIP (atau IP PBX Anda sendiri) pada ponsel cerdas Anda, maka dengan kepercayaan 99% kami dapat mengatakan bahwa data Anda tidak dienkripsi.
Mungkin banyak yang melakukan hal sederhana - mengendus lalu lintas dari perangkat SIP untuk menemukan alasan untuk tidak dapatnya koneksi VOIP.
Dalam praktiknya, ini berarti bahwa semua negosiasi SIP Anda juga dapat dengan mudah diendus, dipulihkan, dan didengarkan di sisi klien seluler dan dapat dilakukan dengan cukup mudah.
Wikipedia memberi tahu kami bahwa ada masalah ini:
"Keamanan Koneksi
Banyak implementasi telepon IP konsumen tidak mendukung enkripsi kriptografi, meskipun fakta bahwa memiliki koneksi telepon yang aman jauh lebih mudah diimplementasikan dengan teknologi IP daripada dengan saluran telepon tradisional. Akibatnya, dengan bantuan penganalisa lalu lintas, relatif mudah untuk mendengarkan panggilan IP, dan dengan beberapa trik bahkan mengubah konten mereka. "Masalah ini muncul dari keinginan untuk membuat klien SIP universal, meskipun di hampir semua softphones populer, enkripsi dinyatakan.
Tetapi selain softphone itu sendiri, server SIP harus mendukung enkripsi, dan di sini akar masalahnya terletak - penyedia berbeda, menggunakan solusi yang berbeda dan untuk mendukung seluruh kebun binatang dari perangkat SIP klien mereka, enkripsi pada server biasanya dimatikan.
Masalah lain yang juga cukup umum adalah memblokir protokol SIP itu sendiri.
Ini dapat berupa kunci di tingkat penyedia tunggal atau di tingkat operator nasional - misalnya, SIP diblokir oleh otoritas UEA, Cina, dan beberapa negara lain.
Masalah lain yang terkenal terkait dengan penggunaan SIP pada perangkat seluler - softphone VOIP standar, yang terus diluncurkan, secara signifikan mengonsumsi baterai ponsel cerdas.
Ini karena sebagian besar IP PBX adalah server SIP biasa yang memerlukan registrasi klien berkala, yaitu aplikasi pada ponsel harus selalu online dan, karenanya, IP PBX selalu menunggu paket registrasi dari aplikasi.
Jika dalam waktu tertentu paket pendaftaran tidak datang dari aplikasi, maka IP PBX menganggap bahwa klien sedang luring dan tidak ada orang di dalam PBX yang dapat melakukan panggilan ke klien tersebut.
Oleh karena itu, aplikasi tersebut harus selalu online dan, karenanya, mengkonsumsi baterai perangkat secara signifikan.
Ini terjadi secara historis ketika perangkat SIP klien terutama telepon IP desktop atau gateway VOIP dan, karenanya, tidak ada masalah menghemat baterai.
Hal terburuk bagi pengguna iOS saat ini adalah mulai dengan versi 11, Apple telah sepenuhnya menghilangkan kemampuan aplikasi untuk selalu online dan, karenanya, aplikasi SIP lama tidak lagi berfungsi pada versi baru iOS. Ini ditentukan oleh kebijakan Apple untuk meminimalkan konsumsi baterai untuk semua aplikasi.
Ada beberapa cara keluar dari situasi dengan baterai.
Gagasan utamanya adalah untuk mentransfer aplikasi secara offline, yaitu untuk "menidurkan" aplikasi dan membangunkannya dengan dorongan tepat pada saat panggilan masuk tiba.
Sebenarnya, semua pengirim pesan instan populer dengan protokol berpemilik - WhatsApp, Viber, Telegram, dan lainnya - melakukannya ketika panggilan audio atau video masuk dibuat - mereka membangunkan aplikasi, itu dimulai dan setelah itu ia dapat menerima panggilan.
Solusi pertama adalah membuat server Anda sendiri, IP PBX Anda dan menulis klien Anda sendiri untuk dua platform (iOS dan Android), yang akan melakukan langkah-langkah di atas.
Pada prinsipnya, beberapa penyedia VOIP besar (misalnya, MTT) atau produsen perangkat lunak untuk server VOIP melakukan ini - mereka memiliki klien SIP mereka sendiri untuk perangkat seluler yang bekerja dalam mode push.
Masalahnya adalah bahwa klien tersebut hanya dapat bekerja dengan penyedia ini atau masing-masing dengan PBX tertentu, jika Anda menggunakan IP PBX kantor Anda dan pada saat yang sama penyedia IP telephony lainnya, maka solusi ini tidak akan bekerja untuk Anda.
Cara kedua adalah membeli klien SIP universal yang dapat mendorong.
Mengapa solusi semacam itu membutuhkan biaya?
Karena klien SIP dengan push tidak hanya menulis aplikasi terpisah dan memasukkannya ke dalam antrian.
Untuk melakukan ini, Anda perlu membuat dan memelihara server yang terpisah, yang akan mengirim paket pendaftaran reguler ke IP PBX Anda, dan server itu sendiri akan bekerja secara langsung dengan aplikasi - bangunkan ketika dipanggil.
Yaitu Untuk membuat, Anda memerlukan seluruh infrastruktur dan itulah sebabnya solusi universal semacam itu dibayar.
Tetapi bagaimana dengan masalah yang disebutkan di atas dengan enkripsi dan pemblokiran SIP?
Ada solusi universal -
M1 Messenger , yang juga dapat berfungsi sebagai klien SIP dengan mode push, dan pada saat yang sama memberikan enkripsi pada sisi klien dan perlindungan terhadap pemblokiran.
Lalu lintas SIP "dibungkus" dengan lalu lintas utusan terenkripsi (TLS) dan penyedia DPI tidak lagi dikenal sebagai VOIP.
Semua ini benar-benar berfungsi pada server SIP apa pun - baik itu kantor Asterisk atau penyedia lainnya dengan nomor virtual - di mana pun di sisi klien akan ada lalu lintas terenkripsi dan mode push.
Jadi, unduh messenger
untuk Android atau
iOS , daftar (perhatikan bahwa pendaftaran TIDAK memerlukan nomor telepon).
Dalam menu umum kita menemukan tab SIP Connections:
Tambahkan akun SIP Anda yang ada.
Nama adalah nama penyedia Anda (dalam contoh kami, itu akan menjadi Zadarma)
Pengguna - di sini Anda harus menentukan login SIP Anda
Domain - alamat penyedia VOIP Anda.
Jika penyedia atau IP PBX Anda menggunakan port-nya, maka Anda bisa
tentukan melalui titik dua, misalnya: sip.voipprovider.com: 5060
Auth - login SIP Anda (sama seperti di bagian User)
Kata sandi - kata sandi Anda untuk akun SIP
Anda dapat menambahkan hingga 8 akun seperti itu ke messenger. Dengan panggilan keluar, pilihan akan ditawarkan melalui penyedia yang melakukan panggilan.
Anda dapat memasukkan beberapa nomor di messenger - baik kantor maupun kota-kota lain dan negara-negara dan selalu tersedia untuk panggilan masuk tanpa takut akan keluarnya baterai baterai dalam jumlah besar.
Karena messenger mendukung push, aplikasi tidur dalam mode siaga dan tidak mengkonsumsi baterai smartphone.
Dengan demikian, Anda selalu dapat menghubungi panggilan SIP yang masuk - misalnya, dengan DID nomor virtual atau kantor (sekarang SIP karena masalah daya biasanya digunakan hanya untuk panggilan keluar).
Kami berharap bahwa fitur-fitur baru M1 Messenger akan memperluas cakupan protokol komunikasi yang nyaman dan populer seperti SIP.