Note: These directions are not complete, and may contain errors. If you encounter an omission or error, please correct this document.
httpd-2.2.4.tar.gz php-5.2.3.tar.gz MySQL/MySQL-*community-5.0.45-0.rhel4.i386.rpm MySQL/my.cnf mod_authz_mitgroup/mod_authz_mitgroup_rhel4.c apache_home.sh web |
mkdir /home/www/apache-2.2.3 ln -s /home/www/apache-2.2.3 /home/www/apache scp -r root@trogdor:/opt/software-repository-tmp/Apache/config-files/conf \ root@trogdor:/opt/software-repository-tmp/Apache/config-files/logs \ root@trogdor:/opt/software-repository-tmp/Apache/config-files/htdocs \ root@trogdor:/opt/software-repository-tmp/Apache/config-files/icons \ root@trogdor:/opt/software-repository-tmp/Apache/config-files/man* \ /home/www/apache chown -R www:www /home/www mv /etc/httpd /etc/httpd.bak ln -s /home/www/apache /etc/httpd ln -s /usr/lib64/httpd/modules /home/www/apache/modules |
mkdir /home/db/tmp cd /home/db/tmp scp root@trogdor:/opt/software-repository-tmp/MySQL/MySQL-client-community-5.0.45-0.rhel5.i386.rpm \ root@trogdor:/opt/software-repository-tmp/MySQL/MySQL-server-community-5.0.45-0.rhel5.i386.rpm \ root@trogdor:/opt/software-repository-tmp/MySQL/MySQL-shared-community-5.0.45-0.rhel5.i386.rpm \ root@trogdor:/opt/software-repository-tmp/MySQL/MySQL-shared-compat-5.0.45-0.rhel5.i386.rpm \ root@trogdor:/opt/software-repository-tmp/MySQL/MySQL-test-community-5.0.45-0.rhel5.i386.rpm \ root@trogdor:/opt/software-repository-tmp/MySQL/perl-DBI-1.52-1.fc6.i386.rpm \ root@trogdor:/opt/software-repository-tmp/MySQL/my.cnf \ /home/db/tmp |
mkdir /home/db/tmp cd /home/db/tmp scp root@trogdor:/opt/software-repository-tmp/MySQL/MySQL-client-community-5.0.45-0.rhel4.i386.rpm \ root@trogdor:/opt/software-repository-tmp/MySQL/MySQL-server-community-5.0.45-0.rhel4.i386.rpm \ root@trogdor:/opt/software-repository-tmp/MySQL/MySQL-shared-community-5.0.45-0.rhel4.i386.rpm \ root@trogdor:/opt/software-repository-tmp/MySQL/MySQL-shared-compat-5.0.45-0.rhel4.i386.rpm \ root@trogdor:/opt/software-repository-tmp/MySQL/MySQL-test-community-5.0.45-0.rhel4.i386.rpm \ root@trogdor:/opt/software-repository-tmp/MySQL/perl-DBI-1.52-1.fc6.i386.rpm \ root@trogdor:/opt/software-repository-tmp/MySQL/my.cnf \ /home/db/tmp |
/etc/init.d/mysql stop rpm \-ev cyrus-sasl-sql-2.1.19-5.EL4.i386 rpm \-ev dovecot-0.99.11-4.EL4.i386 rpm \-ev mysql-4.1.20-1.RHEL4.1.i386 rpm \-ev mysqlclient10-3.23.58-4.RHEL4.1.i386 rpm \-ivh MySQL-client-community-5.0.45-0.rhel4.i386.rpm rpm \-ivh MySQL-test-community-5.0.45-0.rhel4.i386.rpm rpm \-ivh MySQL-devel-community-5.0.45-0.rhel4.i386.rpm rpm \-ivh MySQL-server-community-5.0.45-0.rhel4.i386.rpm |
/etc/init.d/mysql stop rpm \-ev cyrus-sasl-sql-2.1.19-5.EL4.i386 rpm \-ev dovecot-0.99.11-4.EL4.i386 rpm \-ev mysql-4.1.20-1.RHEL4.1.i386 rpm \-ev mysqlclient10-3.23.58-4.RHEL4.1.i386 rpm \-ivh perl-DBI-1.52-1.fc6.i386.rpm rpm \-ivh MySQL-client-community-5.0.45-0.rhel5.i386.rpm rpm \-ivh MySQL-test-community-5.0.45-0.rhel5.i386.rpm rpm \-ivh MySQL-devel-community-5.0.45-0.rhel5.i386.rpm rpm \-ivh MySQL-server-community-5.0.45-0.rhel5.i386.rpm |
/etc/init.d/mysql stop mv /var/lib/mysql /home/db chown \-R db:db /home/db cd /etc/ cp /root/my.cnf . /etc/init.d/mysql start |
openssl version |
mkdir /home/www/tmp cd /home/www/tmp tar \-xzvf /root/openssl-0.9.8a.tar.gz cd openssl-0.9.8a ./config \--prefix=/home/www/ssl \--openssldir=/home/www/ssl make make install |
openssl x509 \-in /home/www/ssl/certs/mitClient.crt \-inform DER \-outform PEM \-out /home/www/ssl/certs/mitCA.pem |
ps > /tmp/foo ps \-elf >> /tmp/foo openssl genrsa \-rand /tmp/foo 1024 >/home/www/ssl/private/`hostname`-key.pem |
openssl req \-key /home/www/ssl/private/`hostname`-key.pem \-new \ >/home/www/ssl/certs/`hostname`-req.pem |
Remember, if the server is a Thalia server, if will need a wildcard certificate and DNS record for \*.\[hostname\], and if it is doing any type of authentication, it will need a joint client/server certificate to be able to connect to the Shibboleth server (and have end users connect to it as well). |
cd /home/www/ssl/bin openssl req \-key /home/www/ssl/private/`hostname`-key.pem \-new \ \-x509 \-nodes >/home/www/ssl/certs/`hostname`-temp.cert |
openssl req \-in ./req.pem \-text |
openssl rsa \-in /home/www/ssl/private/`hostname`-key.pem \-text |
openssl x509 \-in /home/www/ssl/certs/`hostname`-cert.pem \-text |
cd /home/www/tmp tar \-xzvf /root/httpd-2.2.4.tar.gz cd httpd-2.2.4 ./configure \--prefix=/home/www/apache-2.2.4 \--enable-ssl \ \--with-ssl=/home/www/ssl \ \--enable-modules="most mod_rewrite" \--enable-so make make install ln \-s /home/www/apache-2.2.4 /home/www/apache |
cd /home/www/tmp tar \-xzvf /root/php-5.2.3.tar.gz cd php-5.2.3 ./configure \--with-mysql \--with-kerberos=/usr/kerberos \--prefix=/home/www/php-5.2.0 \--with-apxs2=/home/www/apache-2.2.4/bin/apxs \ \--enable-fastcgi \--enable-magic-quotes \--with-openssl \--with-mysql-sock=/home/db/mysql/mysql.sock \--with-mysqli \--enable-sockets \--enable-soap \ \--with-openssl-dir=/home/www/ssl \--with-pear=/usr/share/pear make make install ln \-s php-5.2.0 php |
ServerRoot "/home/www/apache" # change to apache home directory User www # change from daemon Group www # change from daemon Include conf/extra/httpd-vhosts.conf # Uncomment Include conf/extra/httpd-ssl.conf # Uncomment |
# PHP module includes LoadModule php5_module modules/libphp5.so AddHandler php5-script .php AddType text/html .php DirectoryIndex index.php \#AddType application/x-httpd-php-source .phps |
<VirtualHost \*:80> RewriteEngine On RewriteRule \^/(.*) [https://finniganfen.mit.edu/$1] [L,R] </VirtualHost> |
RewriteCond % {REQUEST_URI} \!/WarehouseService |
# points to directory for static html files DocumentRoot "/home/www/apache/htdocs" # the servername of the server ServerName gybe.mit.edu:443 # the admins of this server ServerAdmin map-support@mit.edu # error log file ErrorLog /home/www/apache/logs/error_log # access log file TransferLog /home/www/apache/logs/access_log # public server certificate SSLCertificateFile /usr/local/ssl/certs/gybe.mit.edu.pem # private server certificate SSLCertificateKeyFile /usr/local/ssl/private/https-key.pem \#certificate path SSLCACertificatePath /usr/local/ssl/certs # certificate authority key SSLCACertificateFile /usr/local/ssl/certs/mitCA.pem SSLVerifyClient require SSLVerifyDepth 10 |
SSLOptions \+StdEnvVars \+ExportCertData |
cp /root/apache_home.sh /etc/profile.d/ chmod a+rx,a-w /etc/profile.d/apache_home.sh |
chmod a+rx,a-w /etc/init.d/web |
ln \-s /etc/init.d/web /root/startweb ln \-s /etc/init.d/web /root/stopweb ln \-s /etc/init.d/web /etc/rc.d/rc1.d/K15web ln \-s /etc/init.d/web /etc/rc.d/rc2.d/K15web ln \-s /etc/init.d/web /etc/rc.d/rc3.d/K15web ln \-s /etc/init.d/web /etc/rc.d/rc4.d/K15web ln \-s /etc/init.d/web /etc/rc.d/rc5.d/K15web ln \-s /etc/init.d/web /etc/rc.d/rc6.d/K15web ln \-s /etc/init.d/web /etc/rc.d/rc2.d/S15web ln \-s /etc/init.d/web /etc/rc.d/rc3.d/S15web ln \-s /etc/init.d/web /etc/rc.d/rc4.d/S15web ln \-s /etc/init.d/web /etc/rc.d/rc5.d/S15web |
pathmunge /usr/local/bin pathmunge /usr/kerberos/bin |
/etc/init.d/web start |
/etc/init.d/web stop |