MediaServer | TurnKey GNU/Linux

Simple Network Attached Media Storage

TurnKey MediaServer makes it easy to bring all of your home videos, music, and photos together into a single server that automatically converts and streams your media on-the-fly to play on any device. This app integrates Jellyfin with a file management web app, Windows-compatible network file sharing and other transfer protocols including SFTP, rsync, NFS, and WebDAV. Files can be managed in private or public storage.

Run from browser

V 18.1

V 17.1

GitHub

This appliance includes all the standard features in TurnKey Core, and on top of that:

  • SSL support out of the box./bb
  • Media server (Jellyfin) configurations:
    • Web UI listening on ports 8096 (http) and 8920 (https - uses Jellyfin's own custom SSL/TLS certificate - see more below).
    • Preconfigured reverse proxy to connect to your Jellyfin server via port 12322 using system SSL/TLS certificates.
    • Pre-configured path substitution for Samba access.
    • Pre-configured Music, Movies, TVShows, and Photos directories.
    • Initial configuration to support hardware video acceleration (VA). Additional steps are still required - please see the relevant Jellyfin VA documentation. Installation of the specific drivers for your hardware will also be required (should be available from Debian repositories).
  • File server (Samba) configurations:
    • Pre-configured wordgroup: WORKGROUP
    • Pre-configured netbios name: MEDIASERVER
    • Configured root as administrative samba user.
    • Configured shares:
      • Users home directory.
      • Public storage.
      • CD-ROM with automount and umount hooks (/media/cdrom).
    • NOTE: Due to the removal of libpam-smbpass (see issue #1188), new Samba users must have their passwords explictly set separately when created. However, if you create a Samba user using smbpasswd, then a new Linux user of the same name, with the same password is automatically created (including home directory). E.g.:
      # smbpasswd -a new_user
      New SMB password:
      Retype new SMB password:
      Added user new_user.
      # ls /home/
      new_user
      
  • Webmin module for configuring Samba.
  • Includes popular compression support (zip, rar, bz2).
  • Includes flip to convert text file endings between UNIX and DOS formats.
  • WebDAV CGI providing WebUI and WebDAV access.
  • Access your files securely from anywhere via WebDAV CGI:
    • Web GUI access to your files, with online previews of major formats and drag-n-drop support.
    • Pre-configured authentication (Samba).
    • Pre-configured repositories (storage, user home directories).
  • Default storage: /srv/storage
  • Accessing file server via samba on the command line:
    smbclient //1.0.0.61/storage -Uroot
    mount -t cifs //1.0.0.61/storage /mnt -o username=root,password=PASSWORD
    
  • You can generate your own PKCS #12 certificate (required for direct connection to Jellyfin via HTTPS):
    mkdir /etc/ssl/jellyfin
    SSL_PASSWORD=YOUR_PASSWORD
    CERT_PATH=/etc/ssl/jellyfin/cert.pfx
    openssl pkcs12 -export -out $CERT_PATH -inkey /etc/ssl/private/cert.key -in /etc/ssl/private/cert.pem -password pass:$SSL_PASSWORD
    chmod +r $CERT_PATH
    JELLYFIN_CONF=/etc/jellyfin/system.xml
    sed -i '/<CertificatePath*/d' $JELLYFIN_CONF
    sed -i '/<CertificatePassword*/d' $JELLYFIN_CONF
    sed -i "/<\/ServerConfiguration/i \ <CertificatePath>$CERT_PATH</CertificatePath>\n <CertificatePassword>$SSL_PASSWORD</CertificatePassword>" $JELLYFIN_CONF
    

Usage details & Logging in for Administration

No default passwords: For security reasons there are no default passwords. All passwords are set at system initialization time.

Ignore SSL browser warning: browsers don't like self-signed SSL certificates, but this is the only kind that can be generated automatically. If you have a domain configured, then via Confconsole Advanced menu, you can generate free Let's Encypt SSL/TLS certificates.

Web - point your browser at either:

  1. http://12.34.56.789/ - not encrypted so no browser warning
  2. https://12.34.56.789/ - encrypted with self-signed SSL certificate

Note: some appliances auto direct http to https.

Username for jellyfin webui:

Login as username jellyfin

Username for Samba & Web based file manager (WebDAV CGI):

Login as username root (or other valid Samba user)

Username for OS system administration:

Login as root except on AWS marketplace which uses username admin.

  1. Point your browser to:
  2. Login with SSH client:
    ssh root@12.34.56.789
    

    Special case for AWS marketplace:

    ssh admin@12.34.56.789
    

* Replace 12.34.56.789 with a valid IP or hostname.