Outils pour utilisateurs

Outils du site


admin:services:mumble

Utilisation

Installer le client mumble sur votre machine ou utilisez l'interface web si on l'installe un jour.

Installation

apt install mumble-server avahi-daemon- nftables git
dpkg-reconfigure mumble-server

On demande le démarrage automatique au boot, on autorise le serveur a avoir une priorité supérieure aux autres programmes (en particulier pour limite l'impact des mises à jour) et on indique un mot de passe pour l'admin du serveur.

Le mot de passe peut être généré par exemple avec :

echo $(cat /dev/urandom| tr -dc "a-zA-Z0-9-_*@/\#$%^&*()+{}:<>?=/|\\!" | head -c64)

On modifie ''/etc/mumble-server.ini' pour avoir les lignes suivantes :

/etc/mumble-server.ini
serverpassword="…………………………………"

Authentification LDAP

apt install python-ldap python-daemon
git clone https://github.com/mumble-voip/mumble-scripts.git /opt/mumble-scripts
mkdir /etc/mumble-server
cp /opt/mumble-scripts/Authenticators/LDAP/* /etc/mumble-server

On vérifie le contenu des deux fichiers copiés (parce que donner accès au ldap à du code téléchargé au hasard sur github, on a vu mieux).

FIXME

Utilisation d'un certificat Let's Encrypt

Puisqu'il n'y a aucun service en écoute sur le port 80, on utilise `certbot` en mode standalone.

apt install certbot
at='@'
certbot certonly --standalone --agree-tos --rsa-key-size 4096 \
    -m "admin${at}federez.net" -d chiliagon.federez.net -d mumble.federez.net

Ensuite, il faut modifier la configuration de murmur pour utiliser le certificat :

/etc/mumble-server.ini
sslCert=/etc/letsencrypt/live/chiliagon.federez.net/fullchain.pem
sslKey=/etc/letsencrypt/live/chiliagon.federez.net/privkey.pem

Redirection du port 443

/etc/nftables.conf
#!/usr/sbin/nft -f
 
flush ruleset
 
table inet filter {
	chain input {
		type filter hook input priority 0
		policy drop
		ct state established accept
		ip protocol icmp icmp type { destination-unreachable, router-advertisement, time-exceeded, parameter-problem } accept
		ip6 nexthdr icmpv6 icmpv6 type { destination-unreachable, packet-too-big, time-exceeded, parameter-problem, nd-router-advert, nd-neighbor-solicit, nd-neighbor-advert } accept
		tcp dport { 22, 443, 64738 } accept
		udp dport { 443, 64738 } accept
		reject
	}
	chain forward {
		type filter hook forward priority 0
		policy drop
		reject
	}
	chain output {
		type filter hook output priority 0
		policy accept
	}
}
 
table ip nat {
	chain prerouting {
		type nat hook prerouting priority 0
		tcp dport 443 redirect to :64738
		udp dport 443 redirect to :64738
	}
	chain postrouting {
		type nat hook postrouting priority 0
	}
}
 
table ip6 nat {
	chain prerouting {
		type nat hook prerouting priority 0
		tcp dport 443 redirect to :64738
		udp dport 443 redirect to :64738
	}
	chain postrouting {
		type nat hook postrouting priority 0
	}
}
systemctl enable nftables.service

https://www.skelleton.net/2014/10/16/setting-up-an-active-directory-authenticated-mumble-server/
https://github.com/Johni0702/mumble-web

admin/services/mumble.txt · Dernière modification: 2018/05/08 17:12 de david