Noah Manual
Noah – Docker Installation
Install Docker from https://docker.com.
Setup filestructure on you Docker host as shown in https://github.com/osomanden/noah
Remember to set required root password, username and password in .env file. Do not alter host and database.
On your docker host, run command: docker run -dti
Goto your {hostname}:30001 and login with admin and r0dgr0d.
Noah – Installation
HowTo install Noah on U*ix
chmod -R 0775 /var/www/html/ && chown -R www-data:www-data /var/www/html/
create database gnf_noah
mysql dump gnf_noah.sql
install these extensions (and enable them in php.ini if not done automatically): mysqli soap openssl gd pdo_mysql bcmath curl exif gettext gmp iconv imap json ldap mbstring mysqli session
Requirements:
U*ix (debian/CentOs/RedHat aso) installed with internet access.
Webserver (Apache2/Lighttpd)
php version 7 release - latest (https://php.net)
mysql server version 8 (https://mysql.com)
Optional: MariaDB server (recommended for speed and functionality additions) (https://mariadb.org)
unzip (#apt-get install unzip)
The following extensions to PHP is to be included in the installation:
Note: as of version 1.72 rel. 5, Noah is supporting PHP version 7 - and mcrypt is replaced with openssl module.
Below modules are to be replaced with php- instead as this gives the latest version.
- php-common
- php-mysql (mysql for php)
- php-mbstring (mbstring for php)
- php-bcmath (Binary Calculator which supports numbers of any size and precision, represented as strings)
- php-snmp (snmp for php)
- php-gmp (gmp for php)
- xpd-utils (pdftotext installed)
- php-ldap (ldap for php)
- php-imap (imap for php)
- php-cgi (cgi for php)
- php-soap (soap calls for php)
- php-curl (CURL is used for various tasks)
Default Values
- Default user "admin" with password "r0dgr0d". It is recommended to change the password upon first login.
Install by following:( replace [_version_revision] with current release (eg. _172_13)
- cd /var/www/
- wget https://noah-iam.com/files/Noah_upgrade[_version_revision].zip
- unzip Noah_upgrade[_version_revision].zip
copy/rename the dist-config.php file to config.php
Edit the config.php and alter the db_host, db_name, db_user and db_password
Note: the Docker version of Noah (osomanden/debian-noah) (https://hub.docker.com/repository/docker/osomanden/debian-noah and https://github.com/osomanden/noah) gets the db info from .env file.
Do not alter the config.php file in the docker container!
Use the install.sql from the /install path to create the new Noah Database
mysql -u<noah_db_user> -p noah < noah_install.sql
go to upgrade path and run the command:
cd upgrade/
php upgrade.php
for the latest database version
PHP.INI
Note: some versions of .ini needs some alterations to avoid errors.
CentOS / Debian:
; error_reporting
; Default Value: E_ALL & ~E_NOTICE
; Development Value: E_ALL | E_STRICT
; Production Value: E_ALL & ~E_DEPRECATED
and
short_open_tag = On
MySql
In some cases mysql is set to STRICT on basic installation.
Optional remedy: https://stackoverflow.com/questions/35287846/mysql-default-value-errors-on-new-server
var/ directory
In some cases it is not enough to alter rights or ownership on var/ directory as stated. Noah will still provide an error like this:
The '/var/www/html/var/' folder - and folders in that folder - needs to be set to writeable to apache. In unix, chmod -R 775 var/. System has stopped!
The solution so far is: chcon -R --type httpd_sys_rw_content_t /
CentOs specifics:
mb_internal_coding() is per default NOT installed!
[root@centos-s-1vcpu-1gb-ams3-01 www]# yum install php-mbstring
To fix Apache write access:
[root@centos-s-1vcpu-1gb-ams3-01 www]# cd /var/www/
[root@centos-s-1vcpu-1gb-ams3-01 www]# cd html/
[root@centos-s-1vcpu-1gb-ams3-01 www]# chown apache:apache -R html/
[root@centos-s-1vcpu-1gb-ams3-01 www]# cd html/
[root@centos-s-1vcpu-1gb-ams3-01 html]# find . -type f -exec chmod 0644 {} \;
[root@centos-s-1vcpu-1gb-ams3-01 html]# find . -type d -exec chmod 0755 {} \;
[root@centos-s-1vcpu-1gb-ams3-01 html]# chcon -t httpd_sys_content_t /var/www/html/ -R
[root@centos-s-1vcpu-1gb-ams3-01 html]# chcon -t httpd_sys_rw_content_t var/ -R