Maxscape Installation
The installation of Maxscape is quite easy. The installation process, if you are familiar with UNIX, will take about an hour. Most of the time will be taken by setting up the computer's operating system to meet Maxscape requirements. Once the server is setup, Maxscape needs to be configured. The following README.install is outdated, but gives an overview. The current release was build on Ubuntu UNIX.
README.install
1. INTRODUCTION =============== Maxscape has been build on S.U.S.E, REDHAT and Solaris. The current release is build on Ubuntu Linux. Any database, which is supported by DBD/DBI might be fine. So far, Msql, Mysql and Orcale had been in use. The distribution contains: - an integrated perl compiler - the famous apache daemon - Fast-CGI interface from open market - the apache mod_perl extension - the fast Mysql database - the analog HTTPD statistic tool - many modules from CPAN - ... 2. MANIFEST =========== maxscape-3.35-README.install - this file maxscape-3.35.tar.gz - Maxscape 3.35 tarfile maxscape-3.35-opt-1-linux.tar.gz - perl, apache, mysql, openssl, analog maxscape-3.35-opt-2-linux.tar.gz - .. maxscape-3.35-mysql-db-linux.tar.gz - Maxscape Mysql database files 3. SECURITY =========== Here are only a few tips for Maxscape installations in unsecure environments: - During your first Maxscape installation do not connect your computer to an insecure network - READ the various sources about security. - only use SSH/SCP (secure shell/copy) to login/copy. - install as LESS as possible - DON'T install or enable telnet, ftp, rlogin, rsh, ... - inspect your inetd.conf. - only login to the Maxscape administration server via ssl (https://...) to hide the user identification, passwords, content a.s.o. - CHANGE all PASSWORDS after installation - do not develope on a production system - allways have a BACKUP of your system -:) 4. HARDWARE/OPERATING SYSTEM ============================ Hardware For private use any 80586 PC is ok. For medium intranet sites a pentium or a multi processor PC will do it. Large sites should use a servers from SUN or HP.. Server Cluster The maXscape platform could also be configured to operate on a cluster of dedicated maschines with database, file and proxy server. Operating System MaXscape must be installed on a linux or solaris OS. We recommend Linux REDHAT or S.U.S.E, but other Linux distributions may work, too. Operating System Software Prepare the hardware and the operating system of your computer. If you are going to install this software on a production system, install as less as possible and do not install X. Recommended Memory Space Recommended are 512 GB RAM. For loaded sites, especialy in conjunction with Oracle more are better.128 MB may work, but system performance will suffer, if memory page swapping happens. File Partitions Think about disks and partitioning. You need at least 500 MB disk space for the maxscape software and the base system. Add what your static documents (including images, downloads, a.s.o) and the database installation requires. estimated diskspace >= 'base system (perl, apache, db, ..) + maxscape' + 'your database installation + database files' + 'your static documents' You may give own partitions to the documents roots, the database files and special directories of your various application servers (see /etc/fstab). mount /dev/???? /opt/maxscape/3.35/server/'application server'/docs or (see file partition example): mount /dev/???? /opt/docs ln -s /opt/docs /opt/maxscape/3.35/server/'application server'/docs On SCSI drives the following example configuration may be sufficient. If Mysql is used instead of Oracle, much less storage is required for the database server installation and the database files: sda: / 1.5 GB System-SW swap1 512 MB /usr 5 GB /opt 5 GB Oracle-, Maxscape-SW /home 2GB User-Home-Directories, Scratch f. Installation/Build /var/db1 2GB Oracle-Daten /var/db2 2GB -"- sdb: swap2 512MB /var/db3 2GB -"- /var/db4 2GB -"- 5. BASE SYSTEM INSTALLATION (example on linux with mysql) ========================================================= For easy handling, cut the commands from this file and paste it to the command line shell (tcsh is prefered in the Maxscape interactive shell environment). 1) Login as root. su - 2) Change to the root directory and extract the base system (perl, apache,..) and the mysql database files from the distribution tar files (assuming '/tmp' contains the files). They are installed under the '/opt' directory. cd / tar zxvf /tmp/maxscape-3.35-opt-1-linux.tar.gz tar zxvf /tmp/maxscape-3.35-opt-2-linux.tar.gz 3) Change to the MySql database files directory and extract the Maxscape MySql database files, if you want to use mysql. cd /opt/mysql mkdir var cd var tar zxvf /tmp/maxscape-3.35-mysql-db-linux.tar.gz # Issue the next command after creation of the mysql user. See later... chown -R mysql:mysql /opt/mysql/var # after creation of the mysql user # see later... 3a) To install a new mysql database, an installation script is provided (/maxscape/sbin/install_db.mysql). Skip this point for your first installation. 3b) To create a new database instance for a application server, use the script (/maxscape/sbin/create_db.mysql). Skip this point for your first installation. 3c) The password of the 'mysql' user of the Mysql database is 'kfisxhhv'. The password of the user 'MaXscapeadm' of the Mysql database is 'ktgiotfig'. 6. MAXSCAPE INSTALLATION ======================== 1) Login as root su - 2) Change to the directory, under which the Maxscape software should be installed. We recommend the '/opt' directory. cd /opt Make a directory 'maxscape': mkdir maxscape Make a directory named 3.35: cd maxscape mkdir 3.35 Change to the Maxscape 3.35 server root directory: cd 3.35 3) Extract the Maxscape distribution from the tar file (assuming '/tmp' contains the file). tar zxvf /tmp/maxscape-3.35.tar.gz 4) Define the two shell environment variables PROJECT_NAME and PROJECT_HOME (tcsh example) setenv $PROJECT_NAME maxscape setenv $PROJECT_HOME / 5) Create a unique Maxscape root path. This link could be used as an entry point to the Maxscape directory structure ('cd /maxscape' allways brings you to the maxscape root directory. ln -s /opt/maxscape/3.35 $PROJECT_HOME$PROJECT_NAME 6) Read the README.license file. Only continue if you do accept the license. cd /maxscape less README.license 7) Create required users & groups (mysql example). This script is an example and does not check if users already exist. If you add the users by hand, set the home directory of the maxscape account to: /maxscape/var/home/maxscape or execute (after inspection and possible adaption) # is only an example, see content /maxscape/sbin/create_maxscape_users.sh # is only an example, see content /maxscape/sbin/create_mysql_user.sh or # is only an example, see content /maxscape/sbin/create_users The login shell should allways be a borne shell. '/etc/passwd' should look like: ... mysql:x:8100:8100::/maxscape/var/home/mysql:/bin/sh maxscape:x:8000:8000::/maxscape/var/home/maxscape:/bin/sh maxrun:x:8001:8000::/maxscape/var/home/maxrun:/bin/false super:x:0:8000::/maxscape/var/home/su:/bin/sh ... The '/etc/group' file may look like: ... maxscape:x:8000:maxscape mysql:x:8100:mysql ... 8) Change the passwords for maxscape, super, mysql, ... passwd maxscape .. Note: For all created users passwords should remain disabled (this is the default). Usually these accounts are accessed via ssh (for remote administration) or via the su command (by super or root). 9) Set the required permissions for maxscape, the database and the other tools: chown -R mysql:mysql /opt/mysql/var # (mysql) 10) Now 'cd /maxscape' and run 'make install' At the moment the only action of this script is a: chmod -R ogu+rwx /maxscape/var/tmp 11) Make a new session as user 'maxscape': su - maxscape 12) The distribution comes with a license for a trial and test version of Maxscape. To use this you need to name your server 'www.maxscape.com' having the IP address '192.168.0.90'. So, the following instructions only need to be processed, if you have obtained a Maxscape license for your site. If you have already obtained a Maxscape license for your site, install it, now. For this change to the maxscape root account and copy it to the /maxscape/etc directory: cd /maxscape cp /tmp/maxscape-3.35-License.'your site name' etc/License 13) Adjust the apache configuration, i.e. edit /maxscape/etc/apache/httpd.conf and the apache configuration files of your various application server (/maxscape/server/'your unique application server id'/etc/httpd.conf). The Maxscape administration server (WebServer) and the Test server are preconfigured but you must set your site name. Consult the Maxscape, apache, FCGI, mod_perl, a.s.o. manuals for more information: The apache server configuration file (httpd.conf) is split into the generic and the application server specific parts. The later are included via the apache's include directive. Assuming your site has the name 'www.myscape.com' and runs the Maxscape administration and test servers. (The application server on the port 80 named 'myscape' is disabled.) vi /maxscape/etc/apache/httpd.conf ... ... # Ports assigned to configured servers: # Maxscape administration server (WebServer): Port 2080 Listen 2080 # Maxscape server: Port 4711 Listen 4711 # 'your 1st application server' e.g. 'myscape' (default server): Port 80 Listen 80 ... ... include /maxscape/server/WebServer/etc/httpd.conf include /maxscape/server/MaXscape/etc/httpd.conf #include /maxscape/server/myscape/etc/httpd.conf Change the 'VirtualHost', 'ServerName', ... entries to their real names (change 'asus.local.net' to 'your site name') e.g.: vi /maxscape/server/WebServer/etc/httpd.conf <VirtualHost www.maxscape.com:2080> DocumentRoot /maxscape/server/WebServer/docs ServerName www.maxscape.com ServerAdmin maxscape@maxscape.com ErrorLog /maxscape/var/server/WebServer/logs/error ... ... vi /maxscape/server/MaXscape/etc/httpd.conf <VirtualHost www.maxscape.com:4711> ... DocumentRoot /maxscape/server/MaXscape/docs ServerName www.maxscape.com ServerAdmin maxscape@maxscape.com ... ... 14) Edit the maxscape runtime system configuration file, to set up the database user identification and passwords for the configured application server. You need to change the user passwords of your database, also (not necessary if you use the Mysql database files, that comes with this distribution): vi /maxscape/etc/maxscape.cnf <maXscapeConfiguration> <hash> <item key="main"> <!-- global variables --> <hash> ... <item key="database::product">mysql</item> ... </hash> </item> <!-- application server database configuration --> <item key="Databases"> <hash> <!-- maXscape administration server --> <item key="WebServer"> <!-- unique application server id--> <hash> <item key="Host">localhost</item> <!-- do not touch --> <item key="Id">WebServer</item> <!-- unique application server database id --> <item key="User">mysql</item> <!-- database user --> <item key="Passwd">kfisxhhv</item><!-- database password --> </hash> </item> <!-- 'your application server' --> <item key="myserver"> <!-- unique virtual server id --> <hash> <item key="host">localhost</item> <!-- do not touch --> <item key="id">mydatabase</item> <!-- unique application server database id --> <item key="user">myuser</item> <!-- database user --> <item key="passwd">mypassword</item> <!-- database password --> </hash> </item> ... 15) If all went well till this point, the Maxscape server could be started, now. Start the server from your super session, if a application server is running below port 1024: su - su /maxscape/etc/init.d/maxscape start # (or start,restart,stop) will do the magic. If you see the following lines, your installation seems to be complete. Starting database... MySql Server Home=/opt/mysql/5.5.39/usr Starting apache HTTP server... Starting Maxscape at Di 3. Mai 23:55:37 MEST 2016 from /maxscape... To start Maxscape at boot time add the '/maxscape/etc/init.d/maxscape' script to your OS boot mechanism (e.g. /etc/init.d/*). 16) As a first test of the installation login as maxscape, change to the document root of the Maxscape administration server and invoke the servers FCGI mainloop script. The '-h' option gives a little help: su - maxscape cd /maxscape/server/WebServer/docs ./www.fcg [-h] If all went well, the Maxscape admin server homepage will appear: Content-Type: text/html <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN"> <HTML> <HEAD> <TITLE>Maxscape Administration Server</TITLE> ... 17) Now, it should be possible to login to the maxscape administration server via a web browser (e.g. user 'Max' passwd 'Maxi'). Depending on how you started the server (with or without SSL), enter in the location field of the browser, where 'your site name' is the name of your site (e.g. www.maxscape.com): https://'your site name':2080 or http://'your site name':2080 Depending on your Apache httpd.conf configuration, you can access the MaXscape application server via: http://'your site name' 18) Before you connect the server to an unsecure network, change the passwords of the preconfigured Maxscape users (other users of this distribution do know the preconfigured users and passwords). This can be done via the Maxscape administration server surface or the Maxscape MaxAdmin shell tool. With the MaxAdmin tool the database tables can be created and dumped into ASCII files, located under the application servers directory structure. To change the passwords edit the 'USERS.sql' file and change the 4'th column of each record to the new passwords: vi /maxscape/server/WebServer/tables/USERS.sql INSERT INTO USERS VALUES ('Max','system',3,'MyOwnPassword', ... ... After this recreate the USERS table with the Maxscape MaxAdmin shell tool: MaxAdmin -w WebServer create Table USERS 19) If you have problems, send a message to Max at www.maxscape.com. 7. ORACLE hints =============== If you do use oracle as your favorite database and you have to execute the Maxscape oracle database instanciation script for initial oracle setup. Edit the following two files: 1) Assign the database type 'oracle' to the shell variable project_db_type in the maxscape global profile (/maxscape/etc/profile): vi /maxscape/etc/profile [ -z $project_db_type ] && project_db_type=oracle also add a line like: . /home/oracle/app/oracle/product/'version'/dbs/profile to execute the oracle profile (if it exist's-:), to set the necessary environment variables for oracle, e.g.: export oracle_home=/export/home/oracle/app/oracle/product/'version' export path=$oracle_home/bin:$path export oracle_sid=www export oracle_term=vt100 export ora_nls32=$oracle_home/ocommon/nls/admin/data export ora_nls33=$ora_nls32 export nls_lang=german_germany.we8iso8859p1 export oracle_db1=/home/db1 export oracle_db2=/home/db1 export oracle_db3=/home/db1 export oracle_db4=/home/db1 some oracle installations requires the LD_LIBRARY_PATH variable is passed to the apaches fcgi appclass directive via: appclass /maxscape/server/myserver/docs/www.fcg -processes 3 -listen-queue-depth 5 -restart-delay 0 -initial-env LD_LIBRARY_PATH=/opt/oracle/app/oracle/product/'version'/lib -initial-env PROJECT_SERVER_NAME=myserver (see the httpd.conf file). 2) Edit the maxscape runtime system configuration file, to set up the oracle database user identification and passwords for the configured application server: vi /maxscape/etc/maxscape.cnf <hash> <item key="main"> <hash> ... <item key="database::product">oracle</item> </hash> </item> ... 3) After oracle database instanciation start the database and recreate the Maxscape administration server tables: su - oracle dbstart exit su - maxscape MaxAdmin -w WebServer create Tables 4) Start the apache via it's init script or adapt the Maxscape start scrit to oracle. 7. CONCLUSION ============== Have a lot of fun and thank you for your patience... Copyright Maxscape (c), all rights reserved.