Virtual private server hosting news, reviews, tips, and tutorials from an industry-leading provider.

How To Stream MP4 Video Files From My VPS

Posted: October 29th, 2012 | By: | Filed under: CentOS, Debian, Featured, JW Player, Ubuntu, Video Streaming, Windows | Tags: , , , , , , , , , , , , , , | No Comments »

This is a really good question and was actually the subject of a support ticket. I scratched my own head for a second and realized the solution was much easier than I thought.

What you need:

  • A virtual private server running Windows or Linux
  • A web server such as Apache, IIS, nginx, Lighttpd, etc.
  • Enough disk space for the operating system and video files
  • Enough bandwidth for your video files

Step One:
Install the operating system

This is relatively easy and I have to assume everyone has done this as there is nothing specific or special you need to install on your operating system except make sure it connects online.

Step Two:
Install the web server

For Apache, it’s relatively easy with most Linux operating systems.

Apache download pageApache for Windows
Read the rest of this entry »


How to Install rTorrent/ruTorrent Seedbox on Ubuntu VPS

Posted: February 9th, 2012 | By: | Filed under: Featured, Seedbox, Tutorials | Tags: , , , , | No Comments »

This tutorial will guide you through the installation of libtorrent 0.13.0, rTorrent 0.9, and the ruTorrent Web UI (3.0) on a Debian or Ubuntu system. It has been tested with Debian 6 (x64) and Ubuntu 11.04 (x64).

To begin, access your VPS via SSH and run the following to update your platform and install some needed dependencies:

# apt-get update

# sudo apt-get install subversion build-essential automake libtool libcppunit-dev libcurl3-dev libsigc++-2.0-dev unzip unrar-free curl libncurses-dev

# apt-get install apache2 php5 php5-cli php5-curl

Enable scgi for Apache:

# apt-get install libapache2-mod-scgi

# ln -s /etc/apache2/mods-available/scgi.load /etc/apache2/mods-enabled/scgi.load

Install XMLRPC:

# mkdir /install;cd /install

# svn checkout http://xmlrpc-c.svn.sourceforge.net/svnroot/xmlrpc-c/stable xmlrpc-c

# cd xmlrpc-c

# ./configure –disable-cplusplus

# make

# make install

Intall libtorrent:

# cd /install

# wget http://vps6.net/src/libtorrent-0.13.0.tar.gz

# tar xvf libtorrent-0.13.0.tar.gz

# cd libtorrent-0.13.0

# ./autogen.sh

# ./configure

# make

# make install

Install rTorrent:

# cd /install

# wget http://vps6.net/src/rtorrent-0.9.0.tar.gz

# cd rtorrent-0.9.0

# ./autogen.sh

# ./configure –with-xmlrpc-c

# make

# make install

# ldconfig

Create required directories:

# mkdir /home/seeder1/rtorrent

# mkdir /home/seeder1/rtorrent/.session

# mkdir /home/seeder1/rtorrent/watch

# mkdir /home/seeder1/rtorrent/download

Setup .rtorrent.rc file (rTorrent config):

# cd ~/

# wget http://vps6.net/src/.rtorrent.rc

# cp .rtorrent.rc /home/seeder1/

(Edit the settings in .rtorrent.rc, like max upload/download speed, max connected peers, etc, as needed.)

Install rTorrent:

# cd /install

# wget http://vps6.net/src/rutorrent-3.0.tar.gz

# tar xvf rutorrent-3.0.tar.gz

# mv rutorrent /var/www

# wget http://vps6.net/src/plugins-3.0.tar.gz

# tar xvf plugins-3.0.tar.gz

# mv plugins /var/www/rutorrent

# rm -rf /var/www/rutorrent/plugins/darkpal

# chown -R www-data:www-data /var/www/rutorrent

Secure /rutorrent:

# a2enmod ssl

# a2enmod auth_digest

# a2enmod scgi

# openssl req $@ -new -x509 -days 365 -nodes -out /etc/apache2/apache.pem -keyout /etc/apache2/apache.pem

# chmod 600 /etc/apache2/apache.pem

# htdigest -c /etc/apache2/passwords seedbox seeder1

(Enter a password of your choice when prompted, you will use this to log in to the ruTorrent web UI.)

# cd /etc/apache2/sites-available/

# rm -rf default

# wget http://vps6.net/src/default

# a2ensite default-ssl

# /etc/init.d/apache2 reload

Install screen:

# apt-get install screen

Start rTorrent in a detached shell using screen:

# screen -fa -d -m rtorrent

(To start rtorrent automatically after reboots, add the above command to /etc/rc.local)

 

Setup is now complete! Access ruTorrent at http://xx.xx.xx.xx/rutorrent/ (replace xx.xx with your server’s IP address). You should be greeted with a login prompt, where the username is “seeder1″ and the password is the one you set above in the “secure /rutorrent” section.

VPS6.NET offers plug-n-play ruTorrent seedbox templates that can be setup instantly on any VPS: https://vps6.net/template-rutorrent.php

This article is also available in the VPS6.NET Knowledgebase:

https://vps6.net/my/knowledgebase/64/How-to-Install-ruTorrent-Seedbox-on-Ubuntu-or-Debian-VPS.html

 

 


How to Install Deluge Seedbox VPS on Ubuntu

Posted: January 16th, 2012 | By: | Filed under: Seedbox, Tutorials | No Comments »

Though it is one of the newest seedbox Web UIs, Deluge has proven to be a tested favorite among seeders. Deluge offers one of the most polished and efficient graphical front-ends, and is often called the fastest seedbox VPS UI. This guide will walk you through the setup of a Deluge/deluge-web VPS based on Ubuntu (recommended for 10.04 or above).

Access your VPS as the root user via SSH, and run the following commands:

# adduser –disabled-password –system –home /var/lib/deluge –gecos “Deluge server” –group deluge

# touch /var/log/deluged.log

# touch /var/log/deluge-web.log

# chown deluge:deluge /var/log/deluge*

Install Deluge:

# apt-get update && apt-get upgrade

# apt-get install deluge-common deluged deluge-web

Open the deluge-daemon file:

# vi /etc/default/deluge-daemon

Press “A” to enter edit mode, and copy in the following:

# Configuration for /etc/init.d/deluge-daemon

# The init.d script will only run if this variable non-empty.

DELUGED_USER=”deluge”

# Should we run at startup?

RUN_AT_STARTUP=”YES”

Press ESC, then type :wq and press enter to save and exit the file. Now we will create an init script for the Deluge daemon:

# vi /etc/init.d/deluge-daemon

Copy the following into the file:

#!/bin/sh

### BEGIN INIT INFO

# Provides:          deluge-daemon

# Required-Start:    $local_fs $remote_fs

# Required-Stop:     $local_fs $remote_fs

# Should-Start:      $network

# Should-Stop:       $network

# Default-Start:     2 3 4 5

# Default-Stop:      0 1 6

# Short-Description: Daemonized version of deluge and webui.

# Description:       Starts the deluge daemon with the user specified in

#                    /etc/default/deluge-daemon.

### END INIT INFO

PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

DESC=”Deluge Daemon”

NAME1=”deluged”

NAME2=”deluge”

DAEMON1=/usr/bin/deluged

DAEMON1_ARGS=”-d”             # Consult `man deluged` for more options

DAEMON2=/usr/bin/deluge-web

DAEMON2_ARGS=”"               # Consult `man deluge-web` for more options

PIDFILE1=/var/run/$NAME1.pid

PIDFILE2=/var/run/$NAME2.pid

UMASK=022                     # Change this to 0 if running deluged as its own user

PKGNAME=deluge-daemon

SCRIPTNAME=/etc/init.d/$PKGNAME

 

# Exit if the package is not installed

[ -x "$DAEMON1" -a -x "$DAEMON2" ] || exit 0

 

# Read configuration variable file if it is present

[ -r /etc/default/$PKGNAME ] && . /etc/default/$PKGNAME

 

# Load the VERBOSE setting and other rcS variables

[ -f /etc/default/rcS ] && . /etc/default/rcS

 

# Define LSB log_* functions.

# Depend on lsb-base (>= 3.0-6) to ensure that this file is present.

. /lib/lsb/init-functions

 

if [ -z "$RUN_AT_STARTUP" -o "$RUN_AT_STARTUP" != "YES" ]

then

log_warning_msg “Not starting $PKGNAME, edit /etc/default/$PKGNAME to start it.”

exit 0

fi

 

if [ -z "$DELUGED_USER" ]

then

log_warning_msg “Not starting $PKGNAME, DELUGED_USER not set in /etc/default/$PKGNAME.”

exit 0

fi

 

#

# Function that starts the daemon/service

#

do_start()

{

# Return

#   0 if daemon has been started

#   1 if daemon was already running

#   2 if daemon could not be started

start-stop-daemon –start –background –quiet –pidfile $PIDFILE1 –exec $DAEMON1 \

–chuid $DELUGED_USER –user $DELUGED_USER –umask $UMASK –test > /dev/null

RETVAL1=”$?”

start-stop-daemon –start –background –quiet –pidfile $PIDFILE2 –exec $DAEMON2 \

–chuid $DELUGED_USER –user $DELUGED_USER –umask $UMASK –test > /dev/null

RETVAL2=”$?”

[ "$RETVAL1" = "0" -a "$RETVAL2" = "0" ] || return 1

 

start-stop-daemon –start –background –quiet –pidfile $PIDFILE1 –make-pidfile –exec $DAEMON1 \

–chuid $DELUGED_USER –user $DELUGED_USER –umask $UMASK — $DAEMON1_ARGS

RETVAL1=”$?”

sleep 2

start-stop-daemon –start –background –quiet –pidfile $PIDFILE2 –make-pidfile –exec $DAEMON2 \

–chuid $DELUGED_USER –user $DELUGED_USER –umask $UMASK — $DAEMON2_ARGS

RETVAL2=”$?”

[ "$RETVAL1" = "0" -a "$RETVAL2" = "0" ] || return 2

}

 

#

# Function that stops the daemon/service

#

do_stop()

{

# Return

#   0 if daemon has been stopped

#   1 if daemon was already stopped

#   2 if daemon could not be stopped

#   other if a failure occurred

 

start-stop-daemon –stop –quiet –retry=TERM/30/KILL/5 –user $DELUGED_USER –pidfile $PIDFILE2

RETVAL2=”$?”

start-stop-daemon –stop –quiet –retry=TERM/30/KILL/5 –user $DELUGED_USER –pidfile $PIDFILE1

RETVAL1=”$?”

[ "$RETVAL1" = "2" -o "$RETVAL2" = "2" ] && return 2

 

rm -f $PIDFILE1 $PIDFILE2

 

[ "$RETVAL1" = "0" -a "$RETVAL2" = "0" ] && return 0 || return 1

}

 

case “$1″ in

start)

[ "$VERBOSE" != no ] && log_daemon_msg “Starting $DESC” “$NAME1″

do_start

case “$?” in

0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;

2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;

esac

;;

stop)

[ "$VERBOSE" != no ] && log_daemon_msg “Stopping $DESC” “$NAME1″

do_stop

case “$?” in

0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;

2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;

esac

;;

restart|force-reload)

log_daemon_msg “Restarting $DESC” “$NAME1″

do_stop

case “$?” in

0|1)

do_start

case “$?” in

0) log_end_msg 0 ;;

1) log_end_msg 1 ;; # Old process is still running

*) log_end_msg 1 ;; # Failed to start

esac

;;

*)

# Failed to stop

log_end_msg 1

;;

esac

;;

*)

echo “Usage: $SCRIPTNAME {start|stop|restart|force-reload}” >&2

exit 3

;;

esac

 

:

Give the script proper permissions:

# chmod 755 /etc/init.d/deluge-daemon

# update-rc.d deluge-daemon defaults

You can now reboot your VPS; if everything worked, you will be able to access Deluge at http://xx.xx.xx.xx:8112 with the default password “deluge”. Enjoy!

Click here for information about Deluge Seedbox VPS templates available from VPS6.NET.

This article is also available in the VPS6.NET Knowledgebase:

https://vps6.net/my/knowledgebase/60/How-to-Install-Deluge-Seedbox-VPS-with-Ubuntu.html