Wednesday, April 29, 2020

How To Enable SSH (Secure Shell) On Ubuntu 20.04 LTS Desktop

Video Tutorial - https://youtu.be/IhzjiyFVQy0

 ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Secure Shell (SSH) is a cryptographic network protocol used for a secure connection between a client and a server.
In this tutorial, you will learn how to enable SSH on an Ubuntu Desktop machine. Enabling SSH will allow you to remotely connect to your Ubuntu machine and securely transfer files or perform administrative tasks.
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Os : Ubuntu 20.04 LTS (focal fossa) 64Bit   |  Hostname: www.yourdomain.com   | IP Address of Server:192.168.1.50
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
lsb_release -cd  ; getconf LONG_BIT ; hostname ; hostname -I && apt install -y build-essential net-tools curl git software-properties-common

apt -y install openssh-server

nano /etc/ssh/sshd_config
PermitRootLogin no

systemctl restart ssh ; systemctl status ssh

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

installing noVNC On Ubuntu 20.04 LTS Desktop

Video Tutorial - https://youtu.be/BWe2bnL0Nl8

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

noVNC is a browser based VNC client implemented using HTML5 Canvas and WebSockets.
novnc - Open Source VNC client using HTML5 (WebSockets, Canvas). noVNC is both a VNC client JavaScript library as well as an application built on top of that library. noVNC runs well in any modern browser including mobile browsers (iOS and Android).
Offcial Wesbite :https://novnc.com/info.html GitHub -https://github.com/novnc/noVNC
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Our Server Specification:-
Os : Ubuntu 20.04 LTS (focal fossa) 64Bit   |  Hostname: www.yourdomain.com   | IP Address of Server:192.168.1.50
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
lsb_release -cd  ; getconf LONG_BIT ; hostname ; hostname -I
sudo apt install xfce4 xfce4-goodies tightvncserver novnc websockify python3-numpy build-essential net-tools curl git software-properties-common -y
vncserver
vncserver -kill :1
mv ~/.vnc/xstartup ~/.vnc/xstartup.bak
nano ~/.vnc/xstartup
#!/bin/bash
xrdb $HOME/.Xresources
startxfce4 &
chmod +x ~/.vnc/xstartup
vncserver
vncpasswd  [ StrongPassword ]

cd /etc/ssl ; openssl req -x509 -nodes -newkey rsa:2048 -keyout novnc.pem -out novnc.pem -days 365
chmod 644 novnc.pem
websockify -D --web=/usr/share/novnc/ --cert=/etc/ssl/novnc.pem 6080 localhost:5901
https://192.168.1.50:6080/vnc.html

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

installing VNC Server Tightvncserver On Ubuntu 20.04 LTS Desktop

Video Tutorial -  https://youtu.be/oHm7B3hRSP0

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

VNC is a graphical-based tool that can help you to control a computer remotely. This Tutorials shows you how to setup and configure VNC on a Ubuntu 20.04 Desktop machine.
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Our Server Specification:-
Os : Ubuntu 20.04 LTS (focal fossa) 64Bit   |  Hostname: www.yourdomain.com   |  IP Address of Server:192.168.1.50
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
lsb_release -cd  ; getconf LONG_BIT ; hostname ; hostname -I && apt install -y build-essential net-tools curl git software-properties-common

sudo apt install xfce4 xfce4-goodies tightvncserver
vncserver
vncserver -kill :1
mv ~/.vnc/xstartup ~/.vnc/xstartup.bak
nano ~/.vnc/xstartup
#!/bin/bash
xrdb $HOME/.Xresources
startxfce4 &
chmod +x ~/.vnc/xstartup
vncserver

netstat -tlnp
VNC viewer - http://www.uvnc.com/downloads/ultravnc.html

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

installing Xrdp Server (Remote Desktop RDP ) On Ubuntu 20.04 LTS

 Video Tutorial -https://youtu.be/fOkQJ2a69PI

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Xrdp is an open-source implementation of the Microsoft Remote Desktop Protocol (RDP) that allows you to graphically control a remote computers.
Offcial Website - http://xrdp.org/  | Github - https://github.com/neutrinolabs/xrdp
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Our Server Specification:-
Os : Ubuntu 20.04 LTS (focal fossa) 64Bit   |  Hostname: www.yourdomain.com   |   IP Address of Server:192.168.1.50
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
lsb_release -cd  ; getconf LONG_BIT ; hostname ; hostname -I && apt install -y build-essential net-tools curl git software-properties-common

sudo apt update ; sudo apt install xrdp -y
sudo systemctl enable xrdp ; sudo systemctl status xrdp

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Tuesday, April 28, 2020

How To Deploy a Django App To apache2 Server On Ubuntu 20.04 LTS Desktop

Video Tutorial - https://youtu.be/iXLQe2QF9LA

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Django is a Python-based free and open-source web framework, which follows the model-template-view architectural pattern. It is maintained by the Django Software Foundation, an independent organization established as a 501 non-profit. Django's primary goal is to ease the creation of complex, database-driven websites.

Apache Web Server is designed to create web servers that have the ability to host one or more HTTP-based websites.
Offcial Website -https://www.djangoproject.com/
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Our Server Specification:-
Os : Ubuntu 20.04 LTS (focal fossa) 64Bit   |  Hostname: www.yourdomain.com   |   IP Address of Server:192.168.1.50
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
lsb_release -cd  ; getconf LONG_BIT ; hostname ; hostname -I && sudo apt install -y build-essential net-tools curl git software-properties-common apache2 libapache2-mod-wsgi-py3 python3-django

sudo a2enmod wsgi
sudo a2dissite 000-default ; sudo systemctl restart apache2 ; sudo systemctl reload apache2 ; sudo systemctl status  apache2

sudo adduser oj
sudo usermod --lock oj ; sudo mkdir /home/oj/grouped
sudo chmod u=rwx,g=srwx,o=x /home/oj/grouped ; sudo chown -R oj.oj /home/oj/
sudo find /home/oj/grouped/ -type f -exec chmod -v ug=rw {} \; && sudo find /home/oj/grouped/ -type d -exec chmod -v u=rwx,g=srwx {} \;
sudo adduser $(whoami) oj ; newgrp oj

sudoedit /etc/apache2/sites-available/oj.conf
<VirtualHost *:80>
 ServerName www.yourdomain.com
 WSGIDaemonProcess oj user=oj group=oj threads=5 python-path="/home/oj/grouped/ojexamplecom/"
 WSGIScriptAlias / /home/oj/grouped/ojexamplecom/ojexamplecom/wsgi.py
 <Directory /home/oj/grouped/ojexamplecom/>
     WSGIProcessGroup oj
     WSGIApplicationGroup %{GLOBAL}
     WSGIScriptReloading On
     Require all granted
 </Directory>
 </VirtualHost>
sudo a2ensite oj
cd /home/oj/grouped/ ; django-admin startproject ojexamplecom
nano ojexamplecom/ojexamplecom/settings.py
'127.0.0.1', 'www.yourdomain.com'
sudo service apache2 restart

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Installing Python Pip3 Or Pip in Ubuntu 20.04 LTS Desktop

 Video Tutorial - https://youtu.be/_-JJHCAkFOE

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Python Pip is used to manage i.e. install or remove Python modules.
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Our Server Specification:-
Os : Ubuntu 20.04 LTS (focal fossa) 64Bit   |  Hostname: www.yourdomain.com   |   IP Address of Server:192.168.1.50
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
lsb_release -cd  ; getconf LONG_BIT ; hostname ; hostname -I && apt install -y build-essential net-tools curl git software-properties-common libssl-dev libffi-dev python3-dev

Python Pip3-
python3 -V
sudo apt update ; sudo apt install python3-pip -y
pip3 -V

Or
Python Pip2
sudo apt update ; sudo apt install python-pip -y
pip -V
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------