Server Setup
From Physiki
This page documents setting up the servers running TICC's wiki, forum, and InkSurvey.
Contents |
Preliminaries (Definitions/Notes/etc.)
Hardware
Software
Packages
Installed Packages
Name | Package Name | Reason |
---|---|---|
Apache Web Server | httpd | |
Open SSL | openssl mod_ssl | Provide SSL support on Apache |
Postfix Mail Server | postfix | |
PHP | php53 php53-mysql php53-common php53-cli php53-pdo php53-gd | |
SSH Server | openssh | Remote administration |
Simple Network Management Protocol (SNMP) | net-snmp | |
MySQL | mysql | |
Perl | perl | Needed by Clonezilla |
Perl Modules | perl-Digest-SHA1 | Needed by Clonezilla |
Patch | patch | Merge diff changes with this program |
Other programs
yum install sudo wget make mlocate nano zip unzip man
Configuration File Changes
Configuration Notes
All web accessible files should be put in /var/www/html/ and should be owned by the user nginx and the group web. If it has a password or anything that we do not want to be publicly accessible, then it should be put into /var/www/configs/ and should be owned by php, the user and the group. This will prevent our wonderfully awesome passwords from being thrown out to the world in the event of a web server screwing us over.
Setup
Making Bootable Media with a Kickstart file
mkisofs -o /home/fedora-kickstart.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -J -R -V “Fedora” .
Boot the right kernel
wget http://mirror.anl.gov/pub/centos/5/os/x86_64/isolinux/vmlinuz wget http://mirror.anl.gov/pub/centos/5/os/x86_64/isolinux/initrd.img
title Install CentOS root (hd0,0) kernel /install/vmlinuz ks=http://ticc.mines.edu/ks.cfg initrd /install/initrd.img
Setting up the Wiki
- Download the Mediawiki installation. Current stable release is 1.17.
- Browse to http://serveraddress/wiki/installation/folder/
- Click the "set up the wiki" link to start installation.
- Choose your language.
- The next page lists what Mediawiki has found out about your server. The following warnings were found on ours, followed by why we could ignore them.
- Warning: SQLite is compiled without the FTS3 module, search features will be unavailable on this backend.
- We ignored this because we are not using SQLite for our backend. We simply use MySQL.
- Warning: Could not find eAccelerator, APC, XCache or WinCache. Object caching is not enabled.
- This would speed up our installation, but is something we do not care to bother with at the moment.
- Warning: The intl PECL extension is not available to handle Unicode normalization, falling back to slow pure-PHP implementation.
- Right now, we do not run a high enough traffic site to warrant my bothering with this for too long. At some point in the future, I may look into this, but for now, I'm ignoring it.
- Warning: SQLite is compiled without the FTS3 module, search features will be unavailable on this backend.
- Read the terms, accept them, and move on to database setup.
- On this page, we set it up as:
- Database host: localhost
- Database name: wiki
- Database table prefix: left blank
- Database username and password: We set these to something that made sense to us.
- On the next page for web access, we left it the same as the account created last page.
- We set the Storage Engine to InnoDB and the encoding to Binary.
- Name your wiki (ours is Physiki), leave the project namespace the same, and set up your initial Administrator account. Don't forget to set the e-mail.
- We then chose to keep going with configuration. On the next page, we chose to do "Account Creation Required," and "GNU Free Documentation License 1.3 or Later," although this comes down to personal preference or the needs of your site.
- We set the return e-mail address to webmaster@ticc.mines.edu, since we're going to set up e-mail services on our server, soon.
- File uploads is disabled for us for a moment until we change it through settings files. We did not enable the instant commons option since we do not use it.
- Click continue and then continue again to install.
- There's another step, I think it's copying the LocalSettings.php file over to the wiki directory, but I'm on a ssh tunnel, so I think it mucked up slightly, so I just downloaded it from the server and scp-ed it over.
Forum Setup
I'm going to assume you've already done a few things:
- Created a database server
- Created a database for the forum on the server (I'll call ours "forum")
- Installed and configured a working web server, with php
- Navigate to your web folder on your server
- wget phpBB-3.0.8.zip, or current release.
- If you wish, you can change the phpbb folder name to something like "forum"
- Navigate to your folder in your web browser (for us, ticc.mines.edu/forum/)
- Click on the Install tab and make sure you have all of the pre-reqs. Click Start-Install
- Fill in the database information. Example:
- Database Type: MySQL
- Database Server Hostname: localhost
- Database Server Port: blank
- Database Name: forum
- Database Username: forum
- Database Password: *****
- Prefix for tables...: blank (You will want to use this if the forum is sharing a database with other software, or another forum. However, for the single forum having it's own database, it's unnecessary)
- Click on next step. Hopefully your stuff worked with the test connection. Proceed and conquer.
- Put in the Forum Administrator's information (This can be changed later if need be)
- Continue Proceeding and Conquering!
- Delete the folder "install" in your forum directory
- Enjoy your new forum! Don't kiss it too much.
Installing InkSurvey
- Run This should create a folder called InkSurvey on in the directory.
git clone http://ticc.mines.edu/git/InkSurvey
- cd into the InkSurvey directory, then run
git clone http://ticc.mines.edu/git/InkWidget
- Open up your browser and go to http://servername/InkSurvey/survey.php and fill in the fields.
- Admin E-mail: webmaster@ticc.mines.edu
- MySQL Database Server: localhost
- Database Name: survey
- Database user: survey
- Database pass: *****
- For server name, on our test server we used the IP.
- For "Web Directory," we filled in /var/www/html/
- For "Web Sub-Directory," we used InkSurvey
- Hit Configure Installation
Installing Cacti
- Use yum to install RRDTool. There are WAY TOO MANY dependencies to do this by hand. Only attempt if you have a week to kill. Seriously, just don't do it!
- Navigate to your web directory and wget the latest version of Cacti
- Untar and gunzip and rename the folder created to cacti (or symbolicly link it)
- Set up permissions on the cacti folder
- Edit your cacti/includes/config.php file to work with your database server
- Put the sql template in your database (mysql cacti < cacti/cacti.sql)
- Access <server>/cacti/
- Follow the simple setup, then cackle maniacally when it works