Skip to content
Streaming Mediaserver powered by Jellyfin
Python PHP Shell Makefile
Branch: master
Clone or download
Pull request Compare This branch is 49 commits ahead, 1 commit behind jstruebel:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


MediaServer - 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.

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

  • SSL support out of the box.

  • 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.
    • Preconfigured path substitution for Samba access
    • Preconfigured Music, Movies, TVShows, and Photos directories
  • File server (Samba) configurations:

    • Preconfigured wordgroup: WORKGROUP

    • Preconfigured 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/
  • 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 // -Uroot
    mount -t cifs // /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
    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
    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

Credentials (passwords set at first boot)

  • Jellyfin webUI: username jellyfin
  • Webmin, Webshell, SSH, Samba: username root
  • Web based file manager (WebDAV CGI):
    • username root (or Samba users)
You can’t perform that action at this time.