Monday, June 29, 2020

How To Install Jitsi Meet from Official Package Repository On Ubuntu 20.04 18.04


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

Jitsi Meet is an open-source video conferencing solution, providing virtual meeting rooms for remote team meetings. The sofware provides high video and audio quality and supports fully encrypted connections using TLS/SSL and Let’s Encrypt certificates.

Offcial Website -https://meet.jit.si/

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

Testing Environment:

Ubuntu 20.04 LTS                     Hostname - www.yourdomain.com  - ip Address - 192.168.1.20

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

lsb_release -cd  ; getconf LONG_BIT ; hostname ; hostname -I; apt update ; apt install -y build-essential net-tools curl git software-properties-common


Ubuntu 20-

java -version ; echo $JAVA_HOME

echo 'deb https://download.jitsi.org stable/' | sudo tee /etc/apt/sources.list.d/jitsi-stable.list

wget -qO -  https://download.jitsi.org/jitsi-key.gpg.key | sudo apt-key add -

apt install apt-transport-https -y

apt update ; apt install jitsi-meet -y

systemctl status jitsi-videobridge2 nginx

https://www.yourdomain.com/

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

Ubuntu 18 - Hostname - www.example.com  - ip Address - 192.168.1.40

java -version ; echo $JAVA_HOME

echo 'deb https://download.jitsi.org stable/' | sudo tee /etc/apt/sources.list.d/jitsi-stable.list && wget -qO -  https://download.jitsi.org/jitsi-key.gpg.key | sudo apt-key add -

apt install apt-transport-https -y

apt update ; apt install jitsi-meet -y

systemctl status jitsi-videobridge2 nginx

https://www.example.com

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

Optional -

Set Up User Authentication for Jitsi Meet -

nano /etc/prosody/conf.avail/www.yourdomain.com.cfg.lua

authentication = "anonymous"

authentication = "internal_plain"


VirtualHost "guest.www.yourdomain.com"

    authentication = "anonymous"

    c2s_require_encryption = false


nano /etc/jitsi/meet/www.yourdomain.com-config.js

  // anonymousdomain: 'guest.example.com',

anonymousdomain: 'guest.www.yourdomain.com',


nano /etc/jitsi/jicofo/sip-communicator.properties

org.jitsi.jicofo.auth.URL=XMPP:www.yourdomain.com

systemctl restart prosody jicofo jitsi-videobridge2


prosodyctl register username www.yourdomain.com

https://www.yourdomain.com


User - username       pass - StrongPassword

QuickNotepadTutorial

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


Friday, June 26, 2020

How To Start, Stop, And Restart , Reload, Nginx Web Server

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

Nginx is a powerful server application that routes network traffic. It’s often used as a reverse proxy server, but can also be configured as a regular web server.

One of the most common operations you will encounter is starting, stopping, and restarting the Nginx web server.

In this tutorial, learn how to start, stop, and restart the Nginx service.

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

Testing Environment:Ubuntu 20.04 LTS     Hostname - www.yourdomain.com  - ip Address - 192.168.1.20

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

Check Nginx version#   nginx -v


Start Nginx# systemctl start nginx           Or service nginx start        Or sudo /etc/init.d/nginx start

Stop Nginx#  systemctl stop nginx            Or service nginx stop         Or sudo /etc/init.d/nginx stop


Restart Nginx# systemctl restart nginx       Or service nginx restart      Or sudo /etc/init.d/nginx restart

Reload Nginx#  systemctl reload nginx        Or service nginx reload       Or sudo /etc/init.d/nginx reload


View server status# systemctl status nginx   Or service nginx status       Or sudo /etc/init.d/nginx status


Test Nginx Configuration# service nginx configtest Or ngixn -t


Show command help#     systemctl -h nginx    Or service nginx -?

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

How To Start, Stop, And Restart ,Reload, Apache2 Web Server


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

Apache HTTP server is the most popular web server in the world. It is a free, open-source, and cross-platform HTTP server providing powerful features that can be extended by a wide variety of modules.

If you are a developer or system administrator, chances are that you’re dealing with Apache regularly.


In this Tutorial, we will go over the most important and frequently used Apache commands, including starting, stopping, and restarting Apache

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

Testing Environment:Ubuntu 20.04 LTS  Hostname - www.yourdomain.com  - ip Address - 192.168.1.20

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

Check Apache version#   apache2 -v


Start Apache# systemctl start apache2        Or service apache2 start      Or sudo /etc/init.d/apache2 start

Stop Apache#  systemctl stop apache2         Or service apache2 stop       Or sudo /etc/init.d/apache2 stop


Restart Apache# systemctl restart apache2   Or service apache2 restart   Or sudo /etc/init.d/apache2 restart

Reload Apache# systemctl reload apache2     Or service apache2 reload    Or sudo /etc/init.d/apache2 reload


View server status# systemctl status apache2 Or service apache2 status   Or sudo /etc/init.d/apache2 status


Enable Apache Service# systemctl enable apache2


Check Apache Configuration Syntax Errors# apachectl -t


Show command help#     systemctl -h apache2   Or service apache2 -?

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

Tuesday, June 23, 2020

How To install Zabbix Server Or Cacti On Ubuntu 20.04 LTS


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

Zabbix is an open source interesting and most popular monitoring package. Zabbix provide the monitoring service on servers, desktops, network based applications and applications etc. It uses Zabbix agent for getting information and collecting data on the devices installed with Zabbix. You can also monitor the SMTP, HTTP, SNMP, TCP, ICMP, SSH and telnet protocols or packets. You’ll be get notified by Zabbix to stay alert for real time with the help of XMPP.

Website - https://www.zabbix.com/ 

Github - https://github.com/zabbix/zabbix


Cacti is a free and open-source network monitoring and graphic tool written in PHP. It is designed as the front-end application for the Round-Robin database tool (RRDtool). It is used to get CPU load and network bandwidth utilization in a graph format.

Website - https://www.cacti.net/   

Github - https://github.com/Cacti/cacti/

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

Testing Environment: Ubuntu 20.04 LTS     Hostname - www.example.com  - ip Address - 192.168.1.40

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

installing Zabbix -

apt update ; apt install -y build-essential net-tools curl git software-properties-common

wget https://repo.zabbix.com/zabbix/5.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_5.0-1+focal_all.deb

dpkg -i zabbix-release_5.0-1+focal_all.deb

apt update ; apt -y install zabbix-server-mysql zabbix-frontend-php zabbix-agent zabbix-apache-conf

nano /etc/zabbix/apache.conf

php_value date.timezone Asia/Kolkata

sed -i "s/;date.timezone.*/date.timezone = Asia\/\Kolkata/" /etc/php/*/apache2/php.ini


mysql -u root -p                      | Password - Blank

create database zabbix character set utf8 collate utf8_bin;

grant all privileges on zabbix.* to zabbixuser@localhost identified by 'password';

quit;


DBDetails -  DBName: zabbix  | DBUser: zabbixuser | DBPassword: password


cd /usr/share/doc/zabbix-server-mysql ; zcat create.sql.gz | mysql -u zabbixuser -p zabbix

nano /etc/zabbix/zabbix_server.conf


DBHost=localhost | DBName=zabbix | DBUser=zabbixuser | DBPassword=password

systemctl restart zabbix-server zabbix-agent apache2 ; systemctl enable zabbix-server zabbix-agent apache2


http://www.example.com/zabbix/ | Username: Admin  | Password: zabbix

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

installing Cacti

apt install -y apache2 php-mysql libapache2-mod-php php-xml php-ldap php-mbstring php-gd php-gmp mariadb-server mariadb-client snmp php-snmp rrdtool librrds-perl build-essential net-tools curl git software-properties-common


nano /etc/mysql/mariadb.conf.d/50-server.cnf

collation-server = utf8mb4_unicode_ci

max_heap_table_size = 128M

tmp_table_size = 128M

join_buffer_size = 256M

innodb_file_format = Barracuda

innodb_large_prefix = 1

innodb_buffer_pool_size = 2048M

innodb_flush_log_at_timeout = 3

innodb_read_io_threads = 32

innodb_write_io_threads = 16

innodb_io_capacity = 5000

innodb_io_capacity_max = 10000

innodb_buffer_pool_instances = 21

systemctl daemon-reload ; systemctl restart mariadb ; systemctl status mariadb


sed -i "s/;date.timezone.*/date.timezone = Asia\/\Kolkata/" /etc/php/*/apache2/php.ini

sed -i "s/;date.timezone.*/date.timezone = Asia\/\Kolkata/" /etc/php/*/cli/php.ini

sed -i "s/memory_limit = .*/memory_limit = 512M/" /etc/php/*/apache2/php.ini

sed -i "s/memory_limit = .*/memory_limit = 512M/" /etc/php/*/cli/php.ini

sed -i "s/max_execution_time =.*/max_execution_time = 60/" /etc/php/*/apache2/php.ini

sed -i "s/max_execution_time =.*/max_execution_time = 60/" /etc/php/*/cli/php.ini


mysql -u root -p                                                            [ Password - Blank Press Enter]

create database cacti;

ALTER DATABASE cacti CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

GRANT ALL ON cacti.* TO cactiuser@localhost IDENTIFIED BY 'cactipassword';

flush privileges;

exit

mysql -u root -p mysql < /usr/share/mysql/mysql_test_data_timezone.sql      [ Password - Blank Press Enter] 

mysql -u root -p                                                            [ Password - Blank Press Enter]                          

GRANT SELECT ON mysql.time_zone_name TO cactiuser@localhost;

flush privileges;

exit


wget https://www.cacti.net/downloads/cacti-latest.tar.gz

tar -zxvf cacti-latest.tar.gz ; mv cacti-1* /opt/cacti

mysql -u root -p cacti < /opt/cacti/cacti.sql                               [ Password - Blank Press Enter]

nano /opt/cacti/include/config.php

nano /etc/cron.d/cacti

*/5 * * * * www-data php /opt/cacti/poller.php > /dev/null 2>&1


nano /etc/apache2/sites-available/cacti.conf

Alias /cacti /opt/cacti


  <Directory /opt/cacti>

      Options +FollowSymLinks

      AllowOverride None

      <IfVersion >= 2.3>

      Require all granted

      </IfVersion>

      <IfVersion < 2.3>

      Order Allow,Deny

      Allow from all

      </IfVersion>


   AddType application/x-httpd-php .php


<IfModule mod_php.c>

      php_flag magic_quotes_gpc Off

      php_flag short_open_tag On

      php_flag register_globals Off

      php_flag register_argc_argv On

      php_flag track_vars On

      # this setting is necessary for some locales

      php_value mbstring.func_overload 0

      php_value include_path .

 </IfModule>


  DirectoryIndex index.php

</Directory>

apache2ctl configtest ; a2ensite cacti


systemctl restart apache2 ; systemctl status apache2


touch /opt/cacti/log/cacti.log ;  chown -R www-data:www-data /opt/cacti/

http://www.example.com/cacti      Username: admin | Password: admin  NewPass -O8K["{7A;08^!)x

5 Min later Refresh Web Browser

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

Tuesday, June 16, 2020

How to Install R Programming Language In Ubuntu 20.04 LTS

Video Tutorial -


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

R is an open-source programming language that specializes in statistical computing and graphics.

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

OS - Ubuntu 20.04 LTS 

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

apt update ; apt install -y build-essential net-tools curl git software-properties-common

apt-key adv --keyserver keyserver.ubuntu.com --recv-keys E298A3A825C0D65DFD57CBB651716619E084DAB9

add-apt-repository 'deb https://cloud.r-project.org/bin/linux/ubuntu focal-cran40/'

apt update

apt install r-base -y

sudo -i R

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

installing Go And write Hello World on Linux Mint 19.3 Tricia

Video Tutorial -

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

Go is a compiled, statically typed programming language developed by Google. Many modern applications such as Docker, Kubernetes, and Caddy are written in Go.

Offcial Website -https://golang.org/

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

Testing Environment Setup-  : Linux Mint 19.3 Tricia ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------__________________________________________________________________________________________________________________

lsb_release -cd

apt update ; apt install -y build-essential net-tools curl git software-properties-common


wget -c https://dl.google.com/go/go1.14.2.linux-amd64.tar.gz -O - | sudo tar -xz -C /usr/local

export PATH=$PATH:/usr/local/go/bin

source ~/.profile

go version


mkdir -p go/src/hello && cd go/src/hello

nano hello.go


package main


import "fmt"


func main() {

    fmt.Printf("hello, world\n")

}

go build

./hello

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

How To install Development Tools , Openssl , CMake On Ubuntu 20.04


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


Development tools are required to install on your system if you have planned to build software. It’ s also useful for building packages on your system. Development tools contain few general useful tools like GCC, g++, make, libc6-dev and dpkg-dev packages.


CMake is a cross-platform, open-source build system. CMake is a family of tools designed to build, test and package software. - https://cmake.org/


OpenSSL is a full-featured software library that contains an open-source implementation of the Transport Layer Security (TLS) and Secure Sockets Layer (SSL) protocols, used for securing information transmitted over computer networks. - https://www.openssl.org/

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

Testing Environment: Ubuntu 20.04 LTS  64Bit

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

To install C, C++ Compiler -Development Tools  -  apt update ; apt-get install build-essential -y


Test C and C++ with a sample Program -

apt install ccache -y

nano sum.c

#include<stdio.h>

int main()

{

   int a, b, c;

   printf("Enter two numbers to add, separated by a space: ");

   scanf("%d%d",&a,&b);

   c = a + b;

   printf("The sum of equals %d\n",c);

   return 0;

}

gcc sum.c -o sum && ccache gcc sum.c -o sum && ./sum


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

installing OpenSSL -

apt update ; apt install -y build-essential net-tools curl git software-properties-common libssl-dev checkinstall zlib1g-dev

openssl version -a

cd /usr/local/src/ ; wget https://www.openssl.org/source/openssl-3.0.0-alpha3.tar.gz

tar -xf openssl-3.0.0-alpha3.tar.gz ; cd openssl-3.0.0-alpha3/

./config --prefix=/usr/local/ssl --openssldir=/usr/local/ssl shared zlib

make && make test && make install

nano /etc/ld.so.conf.d/openssl-3.0.0.conf

/usr/local/ssl/lib

ldconfig -v

mv /usr/bin/c_rehash /usr/bin/c_rehash.BEKUP ; mv /usr/bin/openssl /usr/bin/openssl.BEKUP

nano /etc/environment

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/usr/local/ssl/bin"

source /etc/environment

echo $PATH ; which openssl ; openssl version -a


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

installing CMake -

apt update ; apt install -y build-essential net-tools curl git software-properties-common libssl-dev checkinstall zlib1g-dev

wget https://github.com/Kitware/CMake/releases/download/v3.18.0-rc1/cmake-3.18.0-rc1.tar.gz

tar -zxvf cmake-3.18.0-rc1.tar.gz

cd cmake-3.18.0-rc1/

./configure --help

./configure --prefix=/opt/cmake

make && make install

/opt/cmake/bin/cmake -version

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