Installing Jinzora on Ubuntu

From Brandonhutchinson.com

(Difference between revisions)
Jump to: navigation, search
Current revision (21:04, 11 October 2007) (edit) (undo)
 
(8 intermediate revisions not shown.)
Line 1: Line 1:
-
The following are step-by-step instructions for installing Jinzora 2.75 on a Ubuntu 7.04 (Feisty) system. Please visit the [[#Links]] to read more about the installation before proceeding.
+
The following are step-by-step instructions for installing an Jinzora 2.75 on a Ubuntu 7.04 (Feisty) system. Jinzora will be accessed via HTTPS. Please visit the [[#Links]] to read more about the installation before proceeding.
 +
 
 +
== Install Jinzora ==
* Install prerequisites.
* Install prerequisites.
Line 10: Line 12:
$ '''sudo tar zxvf jz275.tar.gz -C /var/www/'''
$ '''sudo tar zxvf jz275.tar.gz -C /var/www/'''
$ '''( cd /var/www/jinzora2 && sudo sh configure.sh )'''
$ '''( cd /var/www/jinzora2 && sudo sh configure.sh )'''
 +
 +
== Configure Jinzora ==
* Change PHP5 settings for Jinzora.
* Change PHP5 settings for Jinzora.
Line 45: Line 49:
$ '''sudo rm -r /var/www/jinzora2/install'''
$ '''sudo rm -r /var/www/jinzora2/install'''
-
=== Links ===
+
== Create an Apache HTTPS instance ==
-
 
+
-
* [http://www.linode.com/wiki/index.php/Apache2_SSL_in_Ubuntu Apache2 SSL in Ubuntu]
+
-
* [http://www.netadmintools.com/art90.html Changing the root password on MySQL]
+
-
* [http://lifehacker.com/software/home-server/geek-to-live-build-an-internet-jukebox-with-jinzora-254178.php Geek to Live: Build an internet jukebox with Jinzora]
+
-
* [http://www.howtoforge.com/ultimate_freebsd_media_server The Ultimate Media Server - Apache+SSL , PHP, MySQL and Jinzora]
+
* Create a private key for the Apache server.
* Create a private key for the Apache server.
Line 61: Line 60:
$ '''openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt'''
$ '''openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt'''
 +
If you receive an '''unable to write 'random state'''' error, change permissions on ''~/.rnd'' so that it is writable by the user running the command.
 +
 +
* Remove the private key passphrase (i.e., create an unencrypted PEM version of the private key) so that Apache can start without user interaction.
 +
$ '''openssl rsa -in server.key -out server.pem'''
 +
$ '''rm server.key'''
 +
 +
* Move the Apache certificate and private key to the Apache directory and configure permissions.
 +
$ '''sudo mv server.pem /etc/apache2/apache.pem'''
 +
$ '''sudo mv server.crt /etc/apache2/apache.crt'''
 +
$ '''sudo chown root:root /etc/apache2/apache.pem'''
 +
$ '''sudo chmod 400 /etc/apache2/apache.pem'''
 +
 +
* Enable mod_ssl within Apache.
 +
$ '''sudo a2enmod ssl'''
 +
 +
* Configure Apache to listen on port 443 (HTTPS).
 +
$ '''sudo sh -c 'echo "Listen 443" >> /etc/apache2/ports.conf''''
 +
 +
* Create an HTTPS site.
 +
$ '''sudo cp /etc/apache2/sites-available/default /etc/apache2/sites-available/ssl'''
 +
 +
* Modify ''/etc/apache2/sites-available/ssl''.
 +
Before:
 +
NameVirtualHost *
 +
<VirtualHost *>
 +
ServerAdmin webmaster@localhost
-
WIP
+
After:
 +
 +
NameVirtualHost *''':443'''
 +
<VirtualHost *''':443'''>
 +
ServerAdmin webmaster@localhost
 +
 +
'''SSLEngine On'''
 +
'''SSLCertificateFile /etc/apache2/apache.crt'''
 +
'''SSLCertificateKeyFile /etc/apache2/apache.pem'''
-
$ openssl x509 -req -days 3650 -in server.csr -signkey server.key -out server.crt
+
* Enable the HTTPS site.
-
Signature ok
+
$ '''sudo a2ensite ssl'''
-
subject=/C=US/ST=Minnesota/L=Minneapolis/O=Navitaire Ltd./CN=hutch.navitaire.com
+
-
Getting Private key
+
-
Enter pass phrase for server.key:
+
-
unable to write 'random state'
+
-
hutch@hutch:~$ ls -ld ~/.rnd
+
-
-rw------- 1 root root 1024 2007-08-20 17:17 /home/hutch/.rnd
+
-
$ sudo chown hutch:hutch ~/.rnd
+
-
$ openssl x509 -req -days 3650 -in server.csr -signkey server.key -out server.crt
+
-
Signature ok
+
-
subject=/C=US/ST=Minnesota/L=Minneapolis/O=Navitaire Ltd./CN=hutch.navitaire.com
+
-
Getting Private key
+
-
Enter pass phrase for server.key:
+
-
$
+
-
$ sudo mv server.key server.crt /usr/lib/apache2/
+
* Reload Apache for the changes to take effect.
 +
$ '''sudo /etc/init.d/apache2 reload'''
 +
 
 +
== Links ==
 +
 
 +
* [http://www.linode.com/wiki/index.php/Apache2_SSL_in_Ubuntu Apache2 SSL in Ubuntu]
 +
* [http://www.netadmintools.com/art90.html Changing the root password on MySQL]
 +
* [http://lifehacker.com/software/home-server/geek-to-live-build-an-internet-jukebox-with-jinzora-254178.php Geek to Live: Build an internet jukebox with Jinzora]
 +
* [http://www.howtoforge.com/ultimate_freebsd_media_server The Ultimate Media Server - Apache+SSL , PHP, MySQL and Jinzora]

Current revision

The following are step-by-step instructions for installing an Jinzora 2.75 on a Ubuntu 7.04 (Feisty) system. Jinzora will be accessed via HTTPS. Please visit the #Links to read more about the installation before proceeding.

Contents

Install Jinzora

  • Install prerequisites.
$ sudo aptitude -y install apache2 libapache-mod-ssl php5 mysql-server php5-mysql php5-gd
  • Download Jinzora.
$ wget http://www.jinzora.com/downloads/jz275.tar.gz
  • Install Jinzora.
$ sudo tar zxvf jz275.tar.gz -C /var/www/
$ ( cd /var/www/jinzora2 && sudo sh configure.sh )

Configure Jinzora

  • Change PHP5 settings for Jinzora.
$ sudo perl -pi.bak -e 's/max_execution_time = \d+/max_execution_time = 300/;s/post_max_size = \d+M/post_max_size = 32M/;s/upload_max_filesize = \dM/upload_max_filesize = 32M/' /etc/php5/apache2/php.ini
  • Set the root password for MySQL. By default, it is blank.
$ mysql -u root mysql
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 14
Server version: 5.0.38-Ubuntu_0ubuntu1-log Ubuntu 7.04 distribution

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> SET PASSWORD FOR root@localhost=PASSWORD(password);
Query OK, 0 rows affected (0.00 sec)

mysql> \q
Bye
  • Reload Apache to ensure required and optional modules are found.
$ sudo /etc/init.d/apache2 reload
  • Configure Jinzora by opening a Web browser to http://localhost/jinzora2. Some non-obvious settings:
    • Installation Type: Standalone
    • Jukebox Mode: Streaming Only
    • Database User: root
    • Database Password: root@localhost password above
    • Database Type: MySQL
    • Create Database: True
  • Before launching Jinzora, remove the installation directory.
$ sudo rm -r /var/www/jinzora2/install

Create an Apache HTTPS instance

  • Create a private key for the Apache server.
$ openssl genrsa -des3 -out server.key 1024
  • Create a Certificate Signing Request (CSR). Make sure the Common Name is equal to fully-qualified domain name of your Web server (i.e., if you will access your Web server at https://host.example.com, the Common Name should be host.example.com).
$ openssl req -new -key server.key -out server.csr
  • Create a self-signed server certificate by using the private key to sign the CSR.
$ openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt

If you receive an unable to write 'random state' error, change permissions on ~/.rnd so that it is writable by the user running the command.

  • Remove the private key passphrase (i.e., create an unencrypted PEM version of the private key) so that Apache can start without user interaction.
$ openssl rsa -in server.key -out server.pem
$ rm server.key
  • Move the Apache certificate and private key to the Apache directory and configure permissions.
$ sudo mv server.pem /etc/apache2/apache.pem
$ sudo mv server.crt /etc/apache2/apache.crt
$ sudo chown root:root /etc/apache2/apache.pem
$ sudo chmod 400 /etc/apache2/apache.pem
  • Enable mod_ssl within Apache.
$ sudo a2enmod ssl
  • Configure Apache to listen on port 443 (HTTPS).
$ sudo sh -c 'echo "Listen 443" >> /etc/apache2/ports.conf'
  • Create an HTTPS site.
$ sudo cp /etc/apache2/sites-available/default /etc/apache2/sites-available/ssl
  • Modify /etc/apache2/sites-available/ssl.

Before:

NameVirtualHost *
<VirtualHost *>
       ServerAdmin webmaster@localhost

After:

NameVirtualHost *:443
<VirtualHost *:443>
       ServerAdmin webmaster@localhost
       
       SSLEngine On
       SSLCertificateFile    /etc/apache2/apache.crt
       SSLCertificateKeyFile /etc/apache2/apache.pem
  • Enable the HTTPS site.
$ sudo a2ensite ssl
  • Reload Apache for the changes to take effect.
$ sudo /etc/init.d/apache2 reload

Links

Personal tools