Jammrock Posted March 18, 2016 Share Posted March 18, 2016 I built a PowerShell script that automates the installation and configuration of Mumble (Murmur) server and PhpMumbleAdmin (one of the better web interfaces I've seen). Though you could take out the PMA parts and insert code for your preferred web interface, or manually install it, if you really wanted to.There are two prompts at the end of the script that require a user to access the PhpMumbleAdmin page to create a super user, and a second to refresh the page and login as the super user. There is some background magic that cannot be done until the site work has been performed.Beyond that there everything is automated by the script.### Legal ###Provided AS-IS with no warranties or guarantees, implied or otherwise. Use at your own risk. It's been tested and works in my environment, but I can't guarantee it will work anywhere else. Use caution. I'm not responsible for damages. Test outside of production first. VMs and Containers (Server 2016) are a great way to test before committing to production.No data is collected and sent to me. You can review the script contents to see for yourself. Third-party sites may collect data when downloading components. You can modify the script if you want, as long as you don't sell it for money.### Requirements ###- Mumble-Server.mst (included in the ZIP. Provides silent install capabilities for Mumble Server)- Windows Server 2012 R2 or newer - Server Core is supported - Server 2016 Containers supported (so far) - Server 2016 Nano is NOT supported- An Internet connection to download the packages- Some PowerShell knowledge - Script execution must be enabled using Set-ExecutionPolicy- About 3GB-5GB of disk space (never really counted)### Some details ###Install-MumbleServer version 1.0Automatically downloads, installs, and configures all components to use Mumble (Murmur) Server with PhpMumbleAdmin (PMA). Apache and PHP must be VC9/VC90 versions for ICE to work. ZeroC ICE is a required component for PMA to work. All components are 32-bit, so this will not work with Windows Nano server which has no 32-bit support. Installed or used Components: Mumble Server 1.2.15: https://github.com/mumble-voip/mumble/releases/download/1.2.15/mumble-1.2.15.msi Non-Sucking Service Manager (NSSM): http://nssm.cc/release/nssm-2.24.zip Apache 2.4.18 x86 VC9: https://www.apachehaus.com/downloads/httpd-2.4.18-x86.zip Apache VC9 PHP component: http://www.apachelounge.com/download/win32/modules-2.4/php5apache2_4.dll-php-5.4-win32.zip PHP 5.4.45 x86 VC9: http://windows.php.net/downloads/releases/php-5.4.45-Win32-VC9-x86.zip OpenSSL 1.0.2f i386 VC9: https://indy.fulgan.com/SSL/openssl-1.0.2g-i386-win32.zip Visual C++ 2008 SP1 x86 (VC9): https://download.microsoft.com/download/d/d/9/dd9a82d0-52ef-40db-8dab-795376989c03/vcredist_x86.exe ICE 3.5.1-6: https://download.zeroc.com/Ice/3.5/Ice-3.5.1-6.msi PMA 0.4.4: http://iweb.dl.sourceforge.net/project/phpmumbleadmin/phpMumbleAdmin-0.4.4.zip If you update a web component in this script, make sure it is the 32-bit (x86 or i386) VC9 compiled version. Picking a non-32-bit or non-VC9 component will likely cause PMA to fail. The primary reason why VC9 is required has to do with php_ice.dll. This DLL is, as of this writing, only compiled with 32-bit VC90 and no version exists, that I can find, compiled with any newer version of Visual C++ (VC10, VC11, VC12, etc.) or in 64-bit. https://forums.zeroc.com/forum/help-center/6409-problems-getting-ice-extension-loaded-in-php-php_ice-dll This causes a chain reaction which requires PHP to be VC9 compiled, which means Apache and the Apache PHP module must be VC9, and OpenSSL must be VC9... and you get the picture. Once ZeroC updates php_ice.dll to a newer version of Visual C++ then newer versions of Apache, PHP and OpenSSL can be used.### How to use it ###.SYNOPSISInstalls Mumble (Mumur) server with a PhpMumbleAdmin web front-end..DESCRIPTIONInstall-MumbleServer automates the process of installing Mumble (Murmur) server with PhpMumbleAdmin on Windows Server 2012 R2 and newer. Basic configuration is completed as part of the script. This script is Server Core and Container compatible. An Internet connection is required. Windows Nano Server is not supported at this time, due to technical limitations with Mumble and PhpMumbleAdmin components..PARAMETER MumSuPwdMumble Super User Password (MumSuPwd) is used to password protect the Mumble Server, and is used as the ICE secret to allow PhpMumbleAdmin to control the Mumble server..PARAMETER QuietDisables verbose logging to the console. Logging will still be written to file. Errors and warnings will still be displayed. There are two required console prompts needed to complete the PhpMumbleAdmin configuration that will appear regardless of this parameter..EXAMPLE.\Install-MumbleServer.ps1Install Mumble server and PhpMumbleAdmin with an auto-generated password..EXAMPLE.\Install-MumbleServer.ps1 'MyAw3s0m3P@ssword!'Install Mumble server and PhpMumbleAdmin with a user provided password..EXAMPLE.\Install-MumbleServer.ps1 -QuietInstall Mumble server and PhpMumbleAdmin with an auto-generated password in quiet mode.Install-MumbleServer.zipWindows Mumble Server Installation Automation Script v.1.0 Link to comment Share on other sites More sharing options...
Please sign in to comment
You will be able to leave a comment after signing in
Sign In Now