Warum werden beim sicheren Telefonieren mit Asterisk (SRTP) Client-Zertifikate für SIP-Geräte benötigt?

Warum werden beim sicheren Telefonieren mit Asterisk (SRTP) Client-Zertifikate für SIP-Geräte benötigt?

Ich habe gerade die Sicherheit von Asterisk erhöht, indem ich diesem Tutorial gefolgt bin:

https://wiki.asterisk.org/wiki/display/AST/Secure+Calling+Tutorial#SecureCallingTutorial-Keys

Beachten Sie, dass Asterisk standardmäßig nicht mit srtp installiert wird. Um diesem Tutorial folgen zu können, müssen Sie Asterisk mit libsrtp und pjsip installieren. So habe ich Asterisk installiert, um srtp zu unterstützen:

# (1) make sure everything is up to date
apt-get update
apt-get upgrade

# (2) Install dependencies that will be needed in order to install asterisk pjproject etc...
apt-get install aptitude -y
aptitude install build-essential -y
aptitude install git -y
aptitude install libssl-dev -y
aptitude install zlib1g-dev -y
aptitude install openssl  -y
aptitude install libxml2-dev -y
aptitude install libncurses5-dev -y
aptitude install uuid-dev -y
aptitude install sqlite3 -y
aptitude install libsqlite3-dev -y
aptitude install pkg-config -y
aptitude install libjansson-dev -y

# (3) make sure everything is up to date again
apt-get update
apt-get upgrade

# (4) Install libsrtp  (library used to encrypt rtp)
cd /root    
wget https://github.com/cisco/libsrtp/archive/v1.6.0.tar.gz
tar -xzf v1.6.0.tar.gz
cd libsrtp-1.6.0

./configure CFLAGS=-fPIC --prefix=/usr
make
make runtest
make install
cd ..

# (5) install pjproject 

git clone https://github.com/asterisk/pjproject pjproject
cd pjproject
 ./configure --prefix=/usr --enable-shared --disable-sound --disable-resample --disable-video --disable-opencore-amr --with-external-srtp
make dep
make

make install
cd ..


# (6) Install Asterisk  WITH SRTP AND PJPROJECT

wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-13-current.tar.gz
tar xvf asterisk-13-current.tar.gz
cd  asterisk-13.19.2
./configure --with-pjproject --with-ssl --with-srtp

make
make install
make samples
make config

Das ist aber ohnehin nicht Teil der Frage.

Also befolgte ich das Tutorial und konnte verschlüsselte Anrufe tätigen.

Als ich die Schritte wiederholte, um alle Telefone zu verbindenIch habe nicht verstanden, warum ich für jedes SIP-Gerät ein Zertifikat generieren musste. Der Server hat bereits ein Zertifikat, warum brauchen die Telefone ein weiteres Zertifikat? Mit anderen Worten, ich habe nicht verstanden, warum ich den Schritt aus dem Tutorial ausführen musste, der besagt:

„Wir generieren ein Client-Zertifikat für unser SIP-Gerät“

./ast_tls_cert -m client -c /etc/asterisk/keys/ca.crt -k /etc/asterisk/keys/ca.key -C phone1.mycompany.com -O "My Super Company" -d /etc/asterisk/keys -o malcolm

Bei einem der Telefone habe ich aus reiner Neugier beschlossen, diesen Schritt zu überspringen. Ich habe kein Client-Zertifikat für Telefon X generiert und aus irgendeinem Grund konnte Telefon X trotzdem eine Verbindung zu Asterisk herstellen und Anrufe tätigen. Telefon X zeigte beim Tätigen von Anrufen auch ein Schloss auf dem Bildschirm an, was bedeutete, dass der Anruf verschlüsselt war. Asterisk zeigte an, dass der Anruf über SRTP lief.Ich konnte keinen Unterschied zwischen den Telefonen mit CLIENT-Zertifikat und Telefon X feststellen. Meine Frage lautet daher: Warum wird im Lernprogramm empfohlen, ein Client-Zertifikat zu generieren?

Antwort1

Ich habe SRTP zuvor mit Asterisk verwendet, ohne dass ein Client-Zertifikat erforderlich war, aber wie bereits erwähnt, können Sie damit den Zugriff basierend auf dem Aussteller des Zertifikats steuern und die Quelle der SIP-Anforderung garantieren.

Auf diese Weise können Sie bestätigen, dass das Telefon von Ihnen eingerichtet wurde und nicht von irgendjemandem, der Ihren SIP-Server gefunden hat. Genau wie bei einem Server, der bei Verwendung von TLS ein Zertifikat vorlegt, können Sie bestätigen, dass es sich bei dem Server nicht um einen zufälligen Man-in-the-Middle-Angriff handelt, da es schwierig ist, ein gültiges Duplikat des Zertifikats zu erstellen. Wenn Sie der Einzige sind, der Zertifikate für Ihre SIP-Geräte ausstellen kann, sind nur die Geräte mit Ihrem Zertifikat die echten Geräte, alles andere ist nur Betrug.

Beginnen Sie hier und folgen Sie der Spur weiter zur gegenseitigen Authentifizierung:https://en.wikipedia.org/wiki/Client_ZertifikatAuch das:https://en.wikipedia.org/wiki/AAA_(Computersicherheit)

SRTP ist lediglich ein Verschlüsselungsmechanismus, der es Ihnen ermöglicht, andere daran zu hindern, die Konversation mitzuhören, wenn Sie etwas wie Wireshark in einem offenen Netzwerk verwenden. Denken Sie an das offene WLAN in Ihrem örtlichen Café. Nur SRTP allein reicht jedoch nicht aus, um Sicherheit zu garantieren; nur weil die Kommunikation verschlüsselt ist, bedeutet das nicht, dass die Quelle oder das Ziel verschlüsselt sind.gültig.

verwandte Informationen