{"id":26,"date":"2023-11-17T04:15:45","date_gmt":"2023-11-17T04:15:45","guid":{"rendered":"https:\/\/www.flexpaul.com\/?p=26"},"modified":"2025-08-16T19:38:21","modified_gmt":"2025-08-16T19:38:21","slug":"lamp","status":"publish","type":"post","link":"https:\/\/www.flexpaul.com\/index.php\/2023\/11\/17\/lamp\/","title":{"rendered":"LAMP"},"content":{"rendered":"<figure style=\"aspect-ratio:auto;width:256px;height:256px\" class=\"wp-block-post-featured-image\"><img loading=\"lazy\" decoding=\"async\" width=\"1200\" height=\"1200\" src=\"https:\/\/www.flexpaul.com\/wp-content\/uploads\/2023\/12\/5dcc9a69-7252-4151-a77d-bd276d4aa404_lamp-n.jpg\" class=\"attachment-post-thumbnail size-post-thumbnail wp-post-image\" alt=\"\" style=\"width:100%;height:100%;object-fit:cover;\" srcset=\"https:\/\/www.flexpaul.com\/wp-content\/uploads\/2023\/12\/5dcc9a69-7252-4151-a77d-bd276d4aa404_lamp-n.jpg 1200w, https:\/\/www.flexpaul.com\/wp-content\/uploads\/2023\/12\/5dcc9a69-7252-4151-a77d-bd276d4aa404_lamp-n-300x300.jpg 300w, https:\/\/www.flexpaul.com\/wp-content\/uploads\/2023\/12\/5dcc9a69-7252-4151-a77d-bd276d4aa404_lamp-n-1024x1024.jpg 1024w, https:\/\/www.flexpaul.com\/wp-content\/uploads\/2023\/12\/5dcc9a69-7252-4151-a77d-bd276d4aa404_lamp-n-150x150.jpg 150w, https:\/\/www.flexpaul.com\/wp-content\/uploads\/2023\/12\/5dcc9a69-7252-4151-a77d-bd276d4aa404_lamp-n-768x768.jpg 768w\" sizes=\"auto, (max-width: 1200px) 100vw, 1200px\" \/><\/figure>\n\n<div class=\"wp-block-post-author\"><div class=\"wp-block-post-author__avatar\"><img alt='Avatar photo' src='https:\/\/www.flexpaul.com\/wp-content\/uploads\/2023\/12\/cropped-cropped-image145-96x96.png' srcset='https:\/\/www.flexpaul.com\/wp-content\/uploads\/2023\/12\/cropped-cropped-image145-192x192.png 2x' class='avatar avatar-96 photo' height='96' width='96' \/><\/div><div class=\"wp-block-post-author__content\"><p class=\"wp-block-post-author__name\"><a href=\"https:\/\/www.flexpaul.com\/index.php\/author\/ppmuetze\/\" target=\"_self\">Paul<\/a><\/p><p class=\"wp-block-post-author__bio\">Coffee-fueled and code-driven, I&#8217;m Paul, a digital nomad tech consultant with a knack for navigating the ever-evolving landscapes of open-source software, solar power, and the occasional political pit stop. With 20+ years of experience under my belt, I&#8217;m excited to share my insights, weave captivating narratives about technology&#8217;s impact, and offer valuable perspectives on leadership and positivity. So, grab your digital passport and join me on this virtual voyage of the internet&#8217;s quirky corners, one thought-provoking discussion at a time. Buckle up, it&#8217;s gonna be an informative and wildly exciting ride!<\/p><\/div><\/div>\n\n\n<p class=\"wp-block-paragraph\">Update 01\/19\/2024 &#8211; In this install we used php7.4 to work with webERP.  In future posts we have uninstalled php7.4, removed xoops and weberp.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">This is a VERY Dirty Setup, by dirty I mean there is not much for descriptions on what you are doing vs. just typing in the code.<\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">Objective:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>L-Ubuntu Server Install<\/li>\n\n\n\n<li>A-Apache Install and Firewall Rules<\/li>\n\n\n\n<li>M-MySQL Install (MariaDB?)<\/li>\n\n\n\n<li>P-php Install (php7.4)<\/li>\n\n\n\n<li>U-unzip Install<\/li>\n\n\n\n<li>Apache Setup &amp; Configuration<\/li>\n\n\n\n<li>Create Basic Landing Page<\/li>\n\n\n\n<li>SSL &#8211; Certbot Install and SSL Configuration<\/li>\n\n\n\n<li>Webmin Installation<\/li>\n\n\n\n<li>xRDP and Desktop Setup&nbsp;<\/li>\n\n\n\n<li>Xoops Install and Setup<\/li>\n\n\n\n<li>webERP, DokuWiki (Integrated) and webSHOP Install and Setup<\/li>\n\n\n\n<li>ERPNext, LMS, Onboarding System, SSO system, POS\/Restaurant POS are on the agenda.  Stay Tuned.<\/li>\n<\/ol>\n\n\n\n<h6 class=\"wp-block-heading\">NOTE, instructions below are in preparation to install ERPNext, however, there is no documentation on its installation in this document.<\/h6>\n\n\n\n<h2 class=\"wp-block-heading\">L of Lamp Install (Linux)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Install Linux (Ubuntu 22.04). Follow Hosted VPS Install (I had to basically reinstall an image of Ubuntu_22.04, if you are doing a fresh install of Ubuntu, do a google search, get Ubuntu installed and come back.)<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Side Note:  After all the configuration is done, if you make any changes to the files or structure to \/var\/www\/flexpaul_net you should re-run this command:<br><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo chown -R $USER:$USER \/var\/www\/flexpaul_net<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Setup USER (if fresh install via VPS image)<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>$ adduser USERNAME<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ usermod -aG sudo USERNAME<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Check<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>$ groups USERNAME<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ exit<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Log back in as new user<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">If your working with multiple servers, you may want to change your host name to something you know.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo nano \/etc\/hostname<\/code><\/pre>\n\n\n\n<h4 class=\"wp-block-heading\">Change Ubuntu to your server&#8217;s friendly name and save.<\/h4>\n\n\n\n<pre class=\"wp-block-code\"><code>flxplnet<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Exit and reconnect to see your changes.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Update &amp; Upgrade the system<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo apt update &amp;&amp; sudo apt upgrade<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo reboot now<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">A of LAMP Install (Apache)<\/h2>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo apt install apache2<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo ufw app list<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">*Since we are installing SSL very soon&#8230;<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo ufw allow in \"Apache Full\"<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo ufw allow in \"OpenSSH\"<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo ufw status<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">(will be disabled since we are using an external firewall)<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">To open all the ports we will need going forward, on your firewall, Open Ports 80; 443; 10000 to your server<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">M of LAMP Install (MariaDB)<\/h2>\n\n\n\n<h6 class=\"wp-block-heading\">MariaDB is in testing mode &#8211; I haven&#8217;t really tried it yet.  You can install MariaDB or MySQL, Skip to the next M for MySQL.  However, with most of my tests, MariaDB is working better then MySQL.  Since MariaDB is a MySQL &#8220;DropInReplacement&#8221; we will continue to use MySQL commands.<\/h6>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo apt update<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo apt install mariadb-server<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo mysql_secure_installation<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Should be 2 no&#8217;s and the rest yes.<\/p>\n\n\n\n<div class=\"wp-block-group has-small-font-size has-global-padding is-layout-constrained wp-container-core-group-is-layout-33858c6f wp-block-group-is-layout-constrained\" style=\"padding-top:0;padding-right:var(--wp--preset--spacing--50);padding-bottom:0;padding-left:var(--wp--preset--spacing--50)\">\n<p class=\"wp-block-paragraph\">(Enter),&nbsp;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">n (Enter),&nbsp;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">[Set root Password] = N (enter)<\/p>\n<\/div>\n\n\n\n<h6 class=\"wp-block-heading\">Create an admin user for MariaDB, replace password with your password.  Side note, I am not sure if we really need to do this step, I know in MySQL we didn&#8217;t need to, however, MariaDB does work a little differently.<\/h6>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo mysql<\/code><\/pre>\n\n\n\n<div class=\"wp-block-group has-global-padding is-layout-constrained wp-block-group-is-layout-constrained\">\n<pre class=\"wp-block-code\"><code>$ <em>mysql&gt;<\/em> GRANT ALL ON *.* TO 'admin'@'localhost' IDENTIFIED BY 'password' WITH GRANT OPTION;<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ <em>mysql&gt;<\/em> FLUSH PRIVILEGES;<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ <em>mysql&gt;<\/em> exit<\/code><\/pre>\n<\/div>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo systemctl status mysql<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo mysqladmin version<\/code><\/pre>\n\n\n\n<h6 class=\"wp-block-heading\">Control+C if you get stuck in status or version<\/h6>\n\n\n\n<hr class=\"wp-block-separator alignwide has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">M of LAMP Install (MySQL)<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">ONLY IF YOU DID NOT INSTALL MariaDB<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo apt install mysql-server<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo mysql_secure_installation<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">** NO for the first option, and Y for the rest **<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Check<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo mysql<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ <em>mysql&gt;<\/em> exit&nbsp;<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator alignwide has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">P of LAMP Install (php7)<\/h2>\n\n\n\n<blockquote class=\"wp-block-quote has-medium-font-size is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\">PLEASE SEE THIS POST ON THE LATEST PHP INSTALL and omit this step, as long as you are NOT planning on using webERP.  If you are going to install the latest php version, do so, come back here and pickup at unZip Install and follow until CMS install, once to that point you can follow the CMS install from scratch. <\/p>\n<\/blockquote>\n\n\n\n<p class=\"wp-block-paragraph\">(software-properties-common may already be installed)<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo apt install software-properties-common\n\n$ sudo add-apt-repository ppa:ondrej\/php\n\n$ sudo apt update\n\n$ sudo apt install php7.4-{cli,common,curl,zip,gd,mysql,xml,mbstring,json,intl,fpm} perl libapache2-mod-php7.4\n\n<em>UPDATE: as of 08\/16\/2025 it appears the php-perl package is not available, I have updated it to just perl.<\/em>\n\n$ php -v<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Should say 7.4<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">unZip Install (Simple)<\/h2>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo apt install unzip<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Apache Setup &amp; Configuration:<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">There are some notes to read about DokuWiki configuration that you may want to decide now.  If you move on without deciding you can come back later after you get that far and edit your wiki_ sites available file.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>$ cd ~<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo mkdir \/var\/www\/flexpaul_net<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo chown -R $USER:$USER \/var\/www\/flexpaul_net<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Create the following files: <br>At the time of writing I have not setup ERPNext yet, however there is code to  add it in the future.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote has-medium-font-size is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\">UPDATE, any code that is shaded is no longer required for updated php version.<\/p>\n<\/blockquote>\n\n\n\n<pre class=\"wp-block-code alignwide\"><code>$ sudo nano \/etc\/apache2\/sites-available\/flexpaul_net.conf\n\n&lt;VirtualHost *:80&gt;\n    ServerName flexpaul.net\n         ServerAdmin webmaster@localhost\n    DocumentRoot \/var\/www\/flexpaul_net\n    ErrorLog ${APACHE_LOG_DIR}\/error.log\n    CustomLog ${APACHE_LOG_DIR}\/access.log combined\n&lt;\/VirtualHost&gt;<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code alignwide has-accent-5-color has-text-color has-link-color wp-elements-b6f4c0d5b1ce1c513afe053ed08d2df2\"><code>$ sudo nano \/etc\/apache2\/sites-available\/xps_.conf\n\n&lt;VirtualHost *:80&gt;\n    ServerName xps.flexpaul.net\n    ServerAlias www.flexpaul.net \n    ServerAdmin webmaster@localhost\n    DocumentRoot \/var\/www\/flexpaul_net\/xps_\n         &lt;Directory \/var\/www\/flexpaul_net\/xps_\/&gt;\n               Options FollowSymlinks\n               AllowOverride All\n               Require all granted\n          &lt;\/Directory&gt;\n     ErrorLog ${APACHE_LOG_DIR}\/xps-error.log\n     CustomLog ${APACHE_LOG_DIR}\/xps-access.log combined\n&lt;\/VirtualHost&gt;<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code alignwide has-accent-5-color has-text-color has-link-color wp-elements-8c3823d46b80ed92811908ef946c2cd4\"><code> $ sudo nano \/etc\/apache2\/sites-available\/webERP_.conf\n\n&lt;VirtualHost *:80&gt;\n    ServerName erp.flexpaul.net\n     ServerAdmin webmaster@localhost\n    DocumentRoot \/var\/www\/flexpaul_net\/webERP_\n    ErrorLog ${APACHE_LOG_DIR}\/error.log\n    CustomLog ${APACHE_LOG_DIR}\/access.log combined\n&lt;\/VirtualHost&gt;<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code alignwide has-accent-5-color has-text-color has-link-color wp-elements-39ee3d06cc3f4cc47cbe31a45eb6b444\"><code> $ sudo nano \/etc\/apache2\/sites-available\/webSHOP_.conf\n\n&lt;VirtualHost *:80&gt;\n    ServerName shop.flexpaul.net\n     ServerAdmin webmaster@localhost\n    DocumentRoot \/var\/www\/flexpaul_net\/webSHOP_\n    ErrorLog ${APACHE_LOG_DIR}\/error.log\n    CustomLog ${APACHE_LOG_DIR}\/access.log combined\n&lt;\/VirtualHost&gt;<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code alignwide\"><code> $ sudo nano \/etc\/apache2\/sites-available\/wiki_.conf\n\n&lt;VirtualHost *:80&gt;\n  ServerAdmin admin@your-domain.com\n  DocumentRoot \/var\/www\/flexpaul_net\/webERP_\/wiki_\n  ServerName wiki.flexpaul.net \n  ErrorLog ${APACHE_LOG_DIR}\/error.log \n  CustomLog ${APACHE_LOG_DIR}\/access.log combined\n    &lt;Directory \/var\/www\/flexpaul_net\/webERP\/wiki_\/(bin\/|conf\/|data\/|inc\/)\/&gt;\n        Options FollowSymlinks\n        AllowOverride All\n        Require all granted \n    &lt;\/Directory&gt;\n&lt;\/VirtualHost&gt;<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code alignwide has-accent-5-color has-text-color has-link-color wp-elements-93b5a3752485b7533438ce15de3d362b\"><code> $ sudo nano \/etc\/apache2\/sites-available\/nxt_.conf\n\n&lt;VirtualHost *:80&gt;\n    ServerName nxt.flexpaul.net\n     ServerAdmin webmaster@localhost\n    DocumentRoot \/var\/www\/flexpaul_net\/ERPnext_\n    ErrorLog ${APACHE_LOG_DIR}\/error.log\n    CustomLog ${APACHE_LOG_DIR}\/access.log combined\n&lt;\/VirtualHost&gt;<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo a2ensite flexpaul_net<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code has-accent-5-color has-text-color has-link-color wp-elements-bf10d469bde2d791cdd8ef70d8e2d3e5\"><code>$ sudo a2ensite xps_<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code has-accent-5-color has-text-color has-link-color wp-elements-c87794ee7ff4d7549e286621df4e02a5\"><code>$ sudo a2ensite webERP_<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code has-accent-5-color has-text-color has-link-color wp-elements-12b34f237ff2eb58bcbd41e0994078d6\"><code>$ sudo a2ensite webSHOP_<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo a2ensite wiki_<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code has-accent-5-color has-text-color has-link-color wp-elements-fc0b92b6b543990ded8fcde2eb6310af\"><code>$ sudo a2ensite nxt_<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo a2dissite 000-default<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo apache2ctl configtest<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>We do get errors since our future directories do not exist<\/strong>.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo systemctl reload apache2<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Create Basic Landing Page (Optional)<\/h2>\n\n\n\n<pre class=\"wp-block-code\"><code>$ cd ~<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo nano \/var\/www\/flexpaul_net\/index.html<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Enter the following<\/p>\n\n\n\n<div class=\"wp-block-group has-global-padding is-layout-constrained wp-block-group-is-layout-constrained\">\n<div class=\"wp-block-group has-global-padding is-layout-constrained wp-block-group-is-layout-constrained\">\n<pre class=\"wp-block-code alignwide\"><code>&lt;html&gt;\n   &lt;head&gt;\n      &lt;title&gt;FLEXPAUL website&lt;\/title&gt;\n   &lt;\/head&gt;\n   &lt;body&gt;\n      &lt;h1&gt;Whatz Up Hommies&lt;\/h1&gt;\n      &lt;p&gt;This is the Server-System of &lt;strong&gt;flexpaul.net&lt;\/strong&gt;.&lt;\/p&gt;\n      &lt;p&gt;All software is tested and ran from this server.&lt;\/p&gt;\n      &lt;p&gt;Unauthorized access is prohibited&lt;\/p&gt;\n      &lt;h2&gt;This site is HIGHLY UNDER CONSTRUCTION!&lt;\/h2&gt;\n  &lt;\/body&gt;\n&lt;\/html&gt;<\/code><\/pre>\n<\/div>\n<\/div>\n\n\n\n<p class=\"wp-block-paragraph\">That will give flexpaul.net a landing page, since www will be re-directed to xps.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">NEXT STEP<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">SSL &#8211; Certbot Install and SSL Config.<\/h2>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo apt install certbot python3-certbot-apache<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo certbot --apache<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Email: yourawesomeemailaddress@here.com<\/p>\n\n\n\n<div class=\"wp-block-group has-small-font-size has-global-padding is-layout-constrained wp-container-core-group-is-layout-1270b9d1 wp-block-group-is-layout-constrained\" style=\"padding-right:var(--wp--preset--spacing--50);padding-left:var(--wp--preset--spacing--50)\">\n<p class=\"wp-block-paragraph\">Answers:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Y,&nbsp; N,&nbsp; (ENTER),&nbsp;<\/p>\n<\/div>\n\n\n\n<p class=\"wp-block-paragraph\">CHECK Timer is running for your cert.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo systemctl status certbot.timer<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\" style=\"padding-top:0;padding-bottom:0\"><code>$ sudo certbot renew --dry-run<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">END CHECK AND STEP<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Webmin Install<\/h2>\n\n\n\n<pre class=\"wp-block-code\"><code>$ cd ~<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\" style=\"padding-top:0;padding-bottom:0\"><code>$ sudo nano \/etc\/apt\/sources.list.d\/webmin.list<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Add the following line<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>deb http:\/\/download.webmin.com\/download\/repository sarge contrib<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\" style=\"padding-top:0;padding-bottom:0\"><code>$ wget http:\/\/www.webmin.com\/jcameron-key.asc<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Import it with:<\/p>\n\n\n\n<pre class=\"wp-block-code\" style=\"padding-top:0;padding-bottom:0\"><code>$ sudo apt-key add jcameron-key.asc<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo apt update<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo apt install webmin<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">CHECK<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>$ systemctl status webmin<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Set firewall External\/Internal to open TCP port 10000.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo ufw allow 10000\/tcp<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https:\/\/your-server-ip:10000\">https:\/\/your-server-ip:10000<\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Setting Up Reverse Proxy<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Not tried, going to thou, hell ya!<br><a href=\"https:\/\/www.linuxbabe.com\/ubuntu\/install-webmin-ubuntu-16-04-server\">https:\/\/www.linuxbabe.com\/ubuntu\/install-webmin-ubuntu-16-04-server<\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Remote Desktop Install<\/h2>\n\n\n\n<pre class=\"wp-block-code\"><code>$ cd ~<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo apt update<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo apt install xfce4<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\"><em>gdm3 &#8211; appears to be the default, however I would like to try lightdm.<\/em><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Disable GUI on HOST<\/strong> on reboot. Really should do this in headless mode. (VPS)<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo systemctl set-default multi-user.target<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo apt install xrdp -y<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo usermod -a -G ssl-cert xrdp<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo systemctl restart xrdp<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ echo \"xfce4-session\" | tee .xsession<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo systemctl restart xrdp<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading has-text-align-center\">STOP!! if you are using the updated PHP version!!<\/h2>\n\n\n\n<h2 class=\"wp-block-heading has-accent-5-color has-text-color has-link-color wp-elements-f82ca43aa4cdd542a5884a0825622f2a\">CMS \/ xoops install<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Lightwight CMS system (Xoops, Admidio)<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Setup Database:<br>database: myxpsdb<br>User: myxpsdbuseruser<br>password: WebUser!642@fun&nbsp;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Location will be \/var\/www\/flexpaul_net\/xps_<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo mysql<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ <em>mysql&gt;<\/em> CREATE USER 'myxpsdbuseruser'@'localhost' IDENTIFIED BY 'WebUser!642@fun';<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ <em>mysql&gt;<\/em> CREATE DATABASE myxpsdb;<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ <em>mysql&gt;<\/em> GRANT ALL PRIVILEGES ON myxpsdb.* TO 'myxpsdbuseruser'@'localhost';<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">NOT REQURIED IF YOU KNOW YOUR character set<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">&gt;This is to assist with installing xoops, please make note of your character set.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>$ <em>mysql&gt;<\/em> USE xpsflxpl; SELECT @@character_set_database, @@collation_database;<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">&gt;+&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;+&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;+<br>| @@character_set_database | @@collation_database |<br>+&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;+&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;+<br>| utf8mb4&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | utf8mb4_0900_ai_ci &nbsp; &nbsp; |<br>+&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;+&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;+<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>&gt;$ <em>mysql&gt;<\/em> exit<\/code><\/pre>\n\n\n\n<h4 class=\"wp-block-heading\">Download and Install XOOPS CMS.<\/h4>\n\n\n\n<pre class=\"wp-block-code\"><code>$ cd \/tmp<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo wget https:\/\/github.com\/XOOPS\/XoopsCore25\/archive\/refs\/tags\/v2.5.10.tar.gz<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo tar \u2013xvzf v2.5.10.tar.gz<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo cp -r \/tmp\/XoopsCore25-2.5.10\/htdocs \/var\/www\/flexpaul_net\/xps_<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Permissions.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo chown -R www-data:www-data \/var\/www\/flexpaul_net\/xps_<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo chmod -R 755 \/var\/www\/flexpaul_net\/xps_<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo a2enmod rewrite<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo apache2ctl configtest<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Note we are down to one site error!<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo systemctl restart apache2<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Next, open your browser, go to the URL., and continue with the installation.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">http:\/\/xps.YourDomain.net\/install<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">You should see the XOOPS installation page. Select your language and start the installation.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>YOU MUST FINISH THE ONLINE INSTALLER<\/strong> Then come back and finish up.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">FINAL STEPS<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo mkdir \/var\/www\/.xps_private<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo mv \/var\/www\/flexpaul_net\/xps_\/xoops_data \/var\/www\/.xps_private\/xoops_data<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo mv \/var\/www\/flexpaul_net\/xps_\/xoops_lib \/var\/www\/.xps_private\/xoops_lib<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo nano \/var\/www\/flexpaul_net\/xps_\/mainfile.php<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">EDIT the lines for&nbsp;<\/p>\n\n\n\n<pre class=\"wp-block-code alignwide\"><code>\/\/ For forward compatibility\n\/\/ Physical path to the XOOPS library directory WITHOUT trailing slash\ndefine('XOOPS_PATH', <strong>'\/var\/www\/.xps_private\/xoops_lib'<\/strong>);\n\/\/ Physical path to the XOOPS datafiles (writable) directory WITHOUT trailing slash\ndefine('XOOPS_VAR_PATH', <strong>'\/var\/www\/.xps_private\/xoops_data'<\/strong>);<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">xoops_lib &gt;&gt;to&gt;&gt; .xps_private\/xoops_lib<br>xoops_data &gt;&gt;to&gt;&gt; .xps_private\/xoops_lib<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">CMS Installed, Please continue past the Security configuration as I have not completed it &#8211; Going to Look into the following, if you know whats going on then don&#8217;t skip it:<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Security configuration<\/h3>\n\n\n\n<div class=\"wp-block-group has-small-font-size has-global-padding is-layout-constrained wp-container-core-group-is-layout-1270b9d1 wp-block-group-is-layout-constrained\" style=\"padding-right:var(--wp--preset--spacing--50);padding-left:var(--wp--preset--spacing--50)\">\n<p class=\"wp-block-paragraph\">The installer will try to configure your site for security considerations. Please double check to make sure:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The&nbsp;<em>mainfile.php<\/em>&nbsp;is readonly.<br>Remove the folder&nbsp;<em>install_remove_17847635666559509b75658<\/em>&nbsp;(or&nbsp;<em>install<\/em>&nbsp;if it was not renamed automatically by the installer) from your server<\/p>\n<\/div>\n\n\n\n<h2 class=\"wp-block-heading\">webERP, DokuWiki, and webSHOP Install<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">I desided to roll all three of these into one, and technically it is only 2 separate programs, I am treating webSHOP as it&#8217;s own.  (And after I did, I should have left them as two, we will see, certain permissions where required and that is why I rolled them into one step.)<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">DB Information:<br>WebERP DB: weberpdb<br>WebERP DB User: weberpdbuser<br>Passwords: WebUser!642@fun<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>$ cd \/tmp<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo wget https:\/\/sourceforge.net\/projects\/web-erp\/files\/webERP_4.15.2.zip<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ wget https:\/\/github.com\/PhilDaintree\/webSHOP\/archive\/refs\/heads\/master.zip<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo wget <a href=\"https:\/\/download.dokuwiki.org\/src\/dokuwiki\/dokuwiki-stable.tgz\">https:\/\/download.dokuwiki.org\/src\/dokuwiki\/dokuwiki-stable.tgz<\/a><\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo unzip webERP*<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo unzip master.zip<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo mkdir wiki_<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo tar xzf dokuwiki-stable.tgz -C wiki_ --strip-components=1<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo cp -r \/tmp\/webERP \/var\/www\/flexpaul_net\/webERP_<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo cp -r \/tmp\/webSHOP-master \/var\/www\/flexpaul_net\/webSHOP_<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">To Integrate Dokuwiki into webERP:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo cp -r \/tmp\/wiki_ \/var\/www\/flexpaul_net\/webERP_\/wiki_<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">For Wiki to be outside of webERP folder (breaks fuctionallity with webERP):<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo cp -r \/tmp\/wiki_ \/var\/www\/flexpaul_net\/wiki_<\/code><\/pre>\n\n\n\n<blockquote class=\"wp-block-quote is-style-plain is-layout-flow wp-block-quote-is-layout-flow is-style-plain--1\">\n<p class=\"wp-block-paragraph\"><code>Side Note about WIKI locations.  If you are installing the wiki to work with webERP, install via the integrated way, you can adjust your sites-available file to point to \/webERP_\/wiki_ instead of \/wiki_.  Otherwise you can install outside of the \/webERP_ folder, but that will break functionallity between the two.<\/code><\/p>\n<\/blockquote>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo groupadd web-grp<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo gpasswd -a www-data web-grp<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo chown -R :web-grp \/var\/www\/flexpaul_net\/webERP_<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo chown -R :web-grp \/var\/www\/flexpaul_net\/webSHOP_<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo chmod -R ug+rw \/var\/www\/flexpaul_net\/webERP_<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo chmod -R ug+rw \/var\/www\/flexpaul_net\/webSHOP_<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo find \/var\/www\/flexpaul_net\/webERP_ -type d -exec chmod g+xs {} \\;<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo find \/var\/www\/flexpaul_net\/webSHOP_ -type d -exec chmod g+xs {} \\;<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">If you are installing DokuWiki outside of \/webERP_ then include the commands on the \/wiki_ folder.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo chown -R :web-grp \/var\/www\/flexpaul_net\/wiki_<br>$ sudo chmod -R ug+rw \/var\/www\/flexpaul_net\/wiki_<br>$ sudo find \/var\/www\/flexpaul_net\/wiki_ -type d -exec chmod g+xs {} \\;<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Going forward you will need to set your ftp program\u2019s umask to 002.&nbsp;<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo service apache2 restart<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo mysql<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ <em>mysql&gt;<\/em> CREATE DATABASE weberpdb;<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ <em>mysql&gt;<\/em> CREATE USER \u2018weberpdbuser\u2019@\u2019localhost\u2019 IDENTIFIED BY \u2018WebUser!642@fun\u2019;<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ <em>mysql&gt;<\/em> GRANT ALL PRIVILEGES ON weberpdb.* TO \u2018weberpdbuser\u2019@\u2019localhost\u2019;<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ <em>mysql&gt;<\/em> FLUSH PRIVILEGES;<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>$ <em>mysql&gt;<\/em> EXIT<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Open a Web Browser and navigate to<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">erp.yourwebsite.com<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">and you should be redirected to an Install Page, finish the install using the information we used above, after that is completed, navigate to<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">wiki.yourwebsite.com\/install.php<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">OR erp.yourwebsite.com\/wiki_\/install.php<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">you should be redirected to an Install Page, follow the on screen instructions using the information outlined above.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">AFTER ALL THAT<\/h4>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\">$ sudo reboot now<\/p>\n<cite>Reboot your server and refill your coffee, have a donut, grab a smoke, beer, whatever!!<\/cite><\/blockquote>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Update 01\/19\/2024 &#8211; In this install we used php7.4 to work with webERP. In future posts we have uninstalled php7.4, removed xoops and weberp. This is a VERY Dirty Setup, by dirty I mean there is not much for descriptions on what you are doing vs. just typing in the code. Objective: NOTE, instructions below [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":200,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[4],"tags":[17,20,15,16,18,21,25,23,14,22,19,24],"class_list":["post-26","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-tutorial","tag-apache","tag-dokuwiki","tag-lamp-server","tag-linux","tag-mariadb","tag-php7","tag-rdp","tag-remote-desktop","tag-tutorial","tag-unzip","tag-weberp","tag-xrdp"],"jetpack_featured_media_url":"https:\/\/www.flexpaul.com\/wp-content\/uploads\/2023\/12\/5dcc9a69-7252-4151-a77d-bd276d4aa404_lamp-n.jpg","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.flexpaul.com\/index.php\/wp-json\/wp\/v2\/posts\/26","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.flexpaul.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.flexpaul.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.flexpaul.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.flexpaul.com\/index.php\/wp-json\/wp\/v2\/comments?post=26"}],"version-history":[{"count":41,"href":"https:\/\/www.flexpaul.com\/index.php\/wp-json\/wp\/v2\/posts\/26\/revisions"}],"predecessor-version":[{"id":682,"href":"https:\/\/www.flexpaul.com\/index.php\/wp-json\/wp\/v2\/posts\/26\/revisions\/682"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.flexpaul.com\/index.php\/wp-json\/wp\/v2\/media\/200"}],"wp:attachment":[{"href":"https:\/\/www.flexpaul.com\/index.php\/wp-json\/wp\/v2\/media?parent=26"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.flexpaul.com\/index.php\/wp-json\/wp\/v2\/categories?post=26"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.flexpaul.com\/index.php\/wp-json\/wp\/v2\/tags?post=26"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}