Asterisk-Telefonsoftware: automatisch installiert und konfiguriert – ideal für absolute Anfänger

28. September 2025

Du hast Linux (Ubuntu, Mint, Debian) auf deinem Rechner oder auf einem Raspberry Pi und möchtest in nur fünf bis zehn Minuten deine ersten Telefongespräche über die Telefonsoftware Asterisk führen und eine Testnummer (Echotest) anrufen, um erste erfolgreiche Erfahrungen zu sammeln – ohne dich mit Installation und Konfiguration abmühen zu müssen? Dann bist du hier richtig, um dir so bequem wie möglich eine Testumgebung einzurichten.

Hier die beiden Bash-Dateien in einer Zip-Datei zum Herunterladen:

Projekt Asterisk-Automatisch.zip

Getestet mit Asterisk 20 auf Ubuntu Mate 24.04. Müsste ab Asterisk 11 funktionieren und arbeitet noch mit einer sip.conf. Das reicht für diesen einfachen Zweck und ist einfacher zu handhaben als pjsip.

Chatgpt image 28. sept. 2025, 15 08 48
2 Bash-Dateien für Linux ermöglichen es mit wenigen Mausklicks eine Telefonanlage auf der Basis von Asterisk einzurichten und zu betreiben.

Alles ist bereits in einer Bash-Datei vorbereitet. Sie installiert automatisch Asterisk auf deinem Debian-Linux wie z.B. Mint, Ubuntu oder dem Rasberry Pi und konfigiert sogleich eine kleine funktionsfähige Telefonanlage:

#!/bin/bash
# asterisk-setup.sh
# Installiert Asterisk + legt 4 SIP-Accounts (9001–9004) + Echotest an

set -e

# --- Prüfen ob root ---
if [ "$EUID" -ne 0 ]; then
  echo "Bitte als root oder mit sudo ausführen."
  exit 1
fi

echo "Asterisk wird installiert …"

# --- Pakete installieren ---
apt update
apt -y install asterisk

# --- Konfig sichern ---
mkdir -p /etc/asterisk/backup
cp /etc/asterisk/sip.conf /etc/asterisk/backup/sip.conf.$(date +%F-%H%M) || true
cp /etc/asterisk/extensions.conf /etc/asterisk/backup/extensions.conf.$(date +%F-%H%M) || true

# --- sip.conf erzeugen ---
cat >/etc/asterisk/sip.conf <<'EOF'
[general]
bindaddr=0.0.0.0
port=5075
bindport=5075
context=telefone
disallow=all
allow=alaw
allow=ulaw
srvlookup=yes
nat=no
qualify=yes

[localphone](!)
type=friend
host=dynamic
context=telefone
dtmfmode=rfc2833
canreinvite=no

[9001](localphone)
secret=pass9001
callerid="Robert Redford" <9001>

[9002](localphone)
secret=pass9002
callerid="Donald Duck" <9002>

[9003](localphone)
secret=pass9003
callerid="Heinrich Heine" <9003>

[9004](localphone)
secret=pass9004
callerid="Angela Musterfrau" <9004>
EOF

# --- extensions.conf erzeugen ---
cat >/etc/asterisk/extensions.conf <<'EOF'
[telefone]
; interne Durchwahlen 9001–9004
exten => _90XX,1,NoOp(Anruf an ${EXTEN})
 same => n,Dial(SIP/${EXTEN},30)
 same => n,Hangup()

; Echotest unter 222
exten => 222,1,NoOp(Echotest)
 same => n,Answer()
 same => n,Playback(demo-echotest)
 same => n,Echo
 same => n,Playback(demo-echodone)
 same => n,Hangup()
EOF

# --- Asterisk starten / neu laden ---
# --- Asterisk starten / neu laden ---
systemctl enable asterisk
systemctl restart asterisk

# --- IP des Rechners ermitteln ---
SERVER_IP=$(ip -4 addr show scope global | grep inet | awk '{print $2}' | cut -d/ -f1 | head -n1)

# --- Übersicht für den Nutzer ---
echo
echo "=================================================="
echo "            Asterisk Setup abgeschlossen          "
echo "--------------------------------------------------"
echo "Server-IP: $SERVER_IP"
echo "SIP-Port : 5075"
echo
echo "SIP-Accounts:"
echo "  9001 : pass9001 (Robert Redford)"
echo "  9002 : pass9002 (Donald Duck)"
echo "  9003 : pass9003 (Heinrich Heine)"
echo "  9004 : pass9004 (Angela Musterfrau)"
echo
echo "Echotest: 222"
echo "=================================================="
echo
echo "Tragt die Server-IP und den Port in eure SIP-Clients ein und probiert die Accounts aus."

Kopiere den obigen Inhalt in eine Datei namens asterisk-setup.sh, öffne das Terminal-Programm (Shell) in dem Ordner, in dem sich diese asterisk-setup.sh befindet und mache sie ausführbar:

chmod +x asterisk-setup.sh

und führe die asterisk-setup.sh danach aus:

sudo ./asterisk-setup.sh

Für die Root-Rechte wirst du nach deinem Linux-Passwort gefragt, das du eintippst. Dann installiert sich automatisch Asterisk (unter Ubuntu Mate 24.04 die Asterisk-Version 20) und es wird automatisch in einem  Rutsch noch die sip.conf und die extensions.conf auf /etc/asterisk angelegt. In der sip.conf sind die Telefonnummern festgelegt und in der extension.conf die Wahlregeln, also was passieren soll, wenn die Nummern angewählt werden.

Chatgpt image 29. aug. 2025, 20 09 40
Wie aufmerksame Leser festgestellt haben, funktioniert diese Anleitung nur auf Linux (Debian, Mint, Ubuntu). Wenn du kein Linux hast, besorge dir einen Raspberry Pi.

Und nun läuft auf deinem Asterisk eine komplette Telefonanlage mit den SIP-Accounts 9001 bis 9004 und mit einer Testnummer 222, die einen Echotest mit einer englischen Ansage ermöglicht.

Gib im Terminal „asterisk- rvvvvvv“ ein, um zu erfahren, ob Asterisk läuft:

volker@volker-ESPRIMO-Q520:~$ sudo su
[sudo] Passwort für volker: 
root@volker-ESPRIMO-Q520:/home/volker# asterisk -rvvvvvvv
Asterisk 20.6.0~dfsg+~cs6.13.40431414-2build5, Copyright (C) 1999 - 2022, Sangoma Technologies Corporation and others.
Created by Mark Spencer <markster@digium.com>
Asterisk comes with ABSOLUTELY NO WARRANTY; type 'core show warranty' for details.
This is free software, with components licensed under the GNU General Public
License version 2 and other licenses; you are welcome to redistribute it under
certain conditions. Type 'core show license' for details.
=========================================================================
Connected to Asterisk 20.6.0~dfsg+~cs6.13.40431414-2build5 currently running on volker-ESPRIMO-Q520 (pid = 1747)
volker-ESPRIMO-Q520*CLI> 

Gib dann „sip show peers“ ein, um zu sehen, welche Telefonnummern konfiguriert sind:

volker-ESPRIMO-Q520*CLI> sip show peers
Name/username             Host                                    Dyn Forcerport Comedia    ACL Port     Status      Description                      
9001/9001                 192.168.1.235                            D  No         No             50601    OK (1 ms)                                    
9002/9002                 192.168.1.35                             D  No         No             45286    OK (3 ms)                                    
9003                      (Unspecified)                            D  No         No             0        UNKNOWN                                      
9004                      (Unspecified)                            D  No         No             0        UNKNOWN                                      
4 sip peers [Monitored: 2 online, 2 offline Unmonitored: 0 online, 0 offline]
volker-ESPRIMO-Q520*CLI> 

Du wirst alle Nummern wahrscheinlich als (Unspecified) sehen, weil du noch keine Telefone (Endgeräte) registriert hast. Hier im Beispiel sind schon die Telefonnummern 9001 und 9002 registriert und sie könnten Telefongespräche aufbauen.

Wir brauchen Telefonapparate oder Softphones als Endgeräte: Nun brauchen wir noch Telefonapparate. Der schnellste Weg dazu sind Softphones. Wir finden Sie für Android-Smartphones im Google Playstore. Folgende Angaben für am Beispiel der 9001 müssen wir in ein Softphone eintragen:

Telefonnummer / Benutzername: 9001
Passwort: pass9001
Registrar: 192.168.1.235:5070

Erklärung zum Registrar: Die IP 192.168.1.235 ist in unserem Beispiel die IP desjenigen Rechners, auf dem sich der Asterisk-Server befindet. 5070 ist der Port, der für das SIP-Protokoll genutzt wird. SIP ist das Protokoll, das den Verbindungsaufbau und und Verbindungsabbruch der Telefonate regelt und steuert.

Für Anfänger ist es nicht so einfach die Account-Daten in ein Softphone einzutragen. Deshalb kann man folgendes Bash-Skript verwenden:

#!/bin/bash
# asterisk-qr-codes.sh
# Liest /etc/asterisk/sip.conf, erkennt automatisch Port aus [general]
# und erzeugt QR-Codes für alle SIP-Accounts. Asterisk selbst wird nicht verändert.

set -e

if [ "$EUID" -ne 0 ]; then
  echo "Bitte als root oder mit sudo ausführen."
  exit 1
fi

apt update -y
apt install -y qrencode

# Server-IP ermitteln
SERVER_IP=$(ip -4 addr show scope global | awk '/inet / {print $2}' | cut -d/ -f1 | head -n1)

# Port aus [general] ermitteln (default 5060)
PORT=$(awk -v RS= '/\[general\]/{print}' /etc/asterisk/sip.conf | \
       grep -m1 -E '^bindport=' | cut -d= -f2 | tr -d ' ')
PORT=${PORT:-5060}

mkdir -p qr-codes

echo "Server-IP: $SERVER_IP, Port: $PORT"
echo "Erzeuge QR-Codes für Accounts aus /etc/asterisk/sip.conf …"

# Alle SIP-Abschnitte auslesen
grep -o '^\[[^]]\+\]' /etc/asterisk/sip.conf | sed 's/\[//;s/\]//' | while read -r SECTION; do
    # Nur echte Nummern/SIP-User (keine Templates)
    [[ $SECTION =~ ^[0-9]+$ ]] || continue

    SECRET=$(grep -A5 "^\[$SECTION\]" /etc/asterisk/sip.conf | grep -m1 'secret=' | cut -d= -f2 | tr -d ' ')
    CALLER=$(grep -A5 "^\[$SECTION\]" /etc/asterisk/sip.conf | grep -m1 'callerid' | cut -d= -f2- | tr -d '"')
    NAME=${CALLER:-SIP-$SECTION}

    # QR-String
    QR="n=$NAME;u=$SECTION;d=$SERVER_IP;p=$SECRET;op=$SERVER_IP:$PORT;dt=0;"

    qrencode -o "qr-codes/${SECTION}.png" "$QR"
    echo "  Account $SECTION -> qr-codes/${SECTION}.png"
done

echo "Fertig. QR-Codes liegen in qr-codes/"

Wir kopieren den  Code in ein Datei names asterisk-qr-code.sh im selben Ordner, in dem sich auch die asterisk-setup.sh befindet und machen sie wie gehabt ausführbar:

chmod +x asterisk-qr-code.sh

Dann können wir sie mit ausführen:

sudo ./asterisk-qr-code.sh

In einem Unterordner werden dann sogleich vier PNG-Bilddateien erzeugt, die je einen QR-Code für die Telefonnummern 9001 bis 9004 enthalten.

Bildschirmfoto zu 2025 09 28 16 15 39
Das Skript erzeugt automatisch vier QR-Codes für die 4 Telefonnummern. Das Skript erkennt zudem die IP des Rechners, auf dem sich der Asterisk-Server befindet, um den richtigen Registrar ermitteln zu können.

Nun laden wir uns mit unserem Android-Smartphone aus dem Google-Playstore das Softphone Sipnetic herunter und lassen es installieren. Nach der Installation werden wir unter anderem gefragt, den Zugriff auf die Kamera zu erlauben. Dies erlauben wir neben dem Mikrofon auf jeden Fall auch. Jetzt können wir den QR-Code mit der Kamera des Softphones scannen und sogleich ist die entsprechende Telefonnummer auf unserem Softphone Sipnetic registriert. Das Softphone muss per WLAN in unserem LAN angemeldet sein. Einfacher geht es nicht. Zum Testen können wir die Nummer 222 anrufen und einen Echotest ausführen, um unsere eigene Stimme zeitverzögert abhören zu können.

Foto sipnetic
Das Softphone Sipnetic für Android macht die Registrierung eines SIP-Accounts durch Abfotografieren eines QR-Codes kinderleicht.

Jetzt kannst du mit einem weiteren Smartphone die Nummer 9002 einrichten, um Telefonate führen zu können. Tipp: Vergebe dem Rechner mit deinem Asterisk eine statische lokale IP. Andernfalls sind nach einer  Änderung der IP die Telefone nicht mehr erreichbar.

Die dritte Nummer 9003 kannst du zum Beispiel auf einer alten FritzBox vergeben, um an ihrem analogen Telefonanschluss alte Wählscheibentelefone zu testen. Die FritzBox kann hinter einem Router als ATA betrieben werden und nutzt eine bereits vorhandene Internetverbindung:

Bildschirmfoto zu 2025 09 28 16 24 55
Beispiel, wie man die 9003 in eine FritzBox einträgt. Ersetze im Registrar die 192.168.1.235 durch die lokale IP des Rechners, auf dem dein Asterisk läuft. Wenn deine FritzBox noch Impulswahl und  Wählscheibentelefone unterstützt, hast du eine Testumgebung für die Reparatur alter Telefone geschaffen.
W49 defekter kondensator02
Wer alte Telefone repariert, braucht eine Testumgebung, um Anrufe tätigen zu können. Dazu reicht eine alte FritzBox als ATA und ein Linux-Rechner.

Allerdings sind mit dieser einfachen Installation nur  Telefonate innerhalb des eigenen LANs möglich. Wenn du weltweit über das Internet telefonieren willst, muss du noch bestimmte Portweiterleitungen in deinem Router eintragen und die sip.conf anpassen. Wie das geht und noch viel mehr, steht unter in meinem Asterisk-Tutorial auf

https://elektronikbasteln.pl7.de/asterisk-auf-einem-raspberry-pi

Hier findest du jede Menge Anregungen. Damit dein Asterisk-Server rund um die Uhr arbeiten kann, solltest du ihn früher oder später auf einem Raspberry Pi betreiben und dich mit Fail2Ban und APIBAN vor Sipscannern schützen. Solange du aber nur hinter dem Router im eigenen LAN bleibst, brauchst du dich nicht vor böswilligen Angriffen schützen.