<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Akalezi Caleb🌴</title>
    <description>The latest articles on DEV Community by Akalezi Caleb🌴 (@calebsgram).</description>
    <link>https://dev.to/calebsgram</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1054239%2F8feb0568-e55b-431b-aaec-4c13e3cfe846.jpg</url>
      <title>DEV Community: Akalezi Caleb🌴</title>
      <link>https://dev.to/calebsgram</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/calebsgram"/>
    <language>en</language>
    <item>
      <title>HNG Stage 0: NGINX Web Server Task</title>
      <dc:creator>Akalezi Caleb🌴</dc:creator>
      <pubDate>Thu, 30 Jan 2025 19:53:38 +0000</pubDate>
      <link>https://dev.to/calebsgram/hng-stage-0-nginx-web-server-task-5f0j</link>
      <guid>https://dev.to/calebsgram/hng-stage-0-nginx-web-server-task-5f0j</guid>
      <description>&lt;p&gt;&lt;strong&gt;Introduction&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;As part of the DevOps track with HNG, I was tasked with setting up and configuring NGINX on an Ubuntu server to render a simple webpage. This is a common responsibility for a DevOps Engineer, and I am happy to walk you through the process :)&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Prerequisites&lt;/strong&gt;&lt;br&gt;
To follow along, you’ll need access to a cloud provider to host a Linux server.&lt;/p&gt;

&lt;p&gt;Note: I am using Amazon Web Service (AWS) to host my Linux server, if you need guidance on setting up a Linux server on AWS, click &lt;a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EC2_GetStarted.html" rel="noopener noreferrer"&gt;here&lt;/a&gt;. Additionally, ensure that your server is accessible over the internet by configuring your security group to allow HTTP (port 80) and HTTPS (port 443) traffic.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Steps&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Logging Into The Server&lt;/strong&gt;&lt;br&gt;
We can log in via a terminal emulator or ssh clients.&lt;br&gt;
If you’re using a Linux or macOS system, you can access your server using the built-in terminal. Open a terminal and run:&lt;br&gt;
&lt;code&gt;ssh -i /path/to/your-private-key.pem username@your-server-ip&lt;br&gt;
&lt;/code&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;/path/to/your-private-key.pem is actual path to your SSH private key.&lt;/li&gt;
&lt;li&gt;username is the server's username (default is ubuntu for Ubuntu instances).&lt;/li&gt;
&lt;li&gt;@your-server-ip is the server's public IP address.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If you need to understand SSH in depth and how to use SSH to access a server, check out &lt;a href="https://dev.to/calebsgram/mastering-ssh-configuration-enhancing-security-with-key-based-authentication-42i3"&gt;this article I wrote&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;For this task, I am using the Mobaxterm tool to access the Linux server.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Updating Packages and Installing Nginx&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Once logged in, run this command;&lt;/p&gt;

&lt;p&gt;&lt;code&gt;touch nginx.sh&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;the cmd creates a file named &lt;em&gt;nginx.sh&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;next, we open the file and write some commands in the file.&lt;/p&gt;

&lt;p&gt;to open the file, run this cmd;&lt;br&gt;
&lt;code&gt;nano nginx.sh&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;paste these commands in the file;&lt;/p&gt;

&lt;p&gt;&lt;code&gt;sudo apt update &amp;amp;&amp;amp; sudo apt upgrade -y&lt;br&gt;
sudo apt install nginx -y&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;code&gt;sudo apt update &amp;amp;&amp;amp; sudo apt upgrade -y&lt;/code&gt; – Updates the package list and upgrades all installed packages to their latest versions.&lt;br&gt;
&lt;code&gt;sudo apt install nginx -y&lt;/code&gt; – Installs the Nginx web server without prompting for confirmation.&lt;/p&gt;

&lt;p&gt;Ctrl + S to save the content and Ctrl + x to exit.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Executing the File&lt;/strong&gt;&lt;br&gt;
We need to run the file but we can't because it is not executable. To do this, we first need to change the permissions of the file. To change this, run this cmd;&lt;/p&gt;

&lt;p&gt;&lt;code&gt;chmod +x nginx.sh&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;now to run this file, run this cmd;&lt;/p&gt;

&lt;p&gt;&lt;code&gt;./nginx.sh&lt;/code&gt;&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwj7om60zvnwpw3q63jfy.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwj7om60zvnwpw3q63jfy.png" alt="Image description" width="800" height="231"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;We can confirm the status of nginx using this cmd;&lt;/p&gt;

&lt;p&gt;&lt;code&gt;systemctl status nginx&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Nginx renders web pages in the /var/www/html directory by default. We will need to navigate to here and create the html we will render.&lt;br&gt;
To navigate there, run this cmd;&lt;br&gt;
&lt;code&gt;cd /var/www/html&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Once here, we will create a file named index.html and open it using nano;&lt;br&gt;
&lt;code&gt;touch index.html&lt;/code&gt;&lt;br&gt;
&lt;code&gt;nano index.html&lt;/code&gt;.&lt;br&gt;
If you get a permission error, run this cmd;&lt;br&gt;
&lt;code&gt;sudo su&lt;/code&gt;&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1mog45w67lshemacmczx.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1mog45w67lshemacmczx.png" alt="Image description" width="524" height="141"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Here, I wrote the required text to complete this stage.&lt;/p&gt;

&lt;p&gt;Ctrl + S to save the content of the file and Ctrl + x to exit.&lt;/p&gt;

&lt;p&gt;Now, we check the status of nginx and restart the service.&lt;br&gt;
To check the status and restart nginx, run these cmds;&lt;/p&gt;

&lt;p&gt;&lt;code&gt;systemctl status nginx&lt;/code&gt;&lt;br&gt;
&lt;code&gt;systemctl restart nginx&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwnj5zfswi5gda65392xk.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwnj5zfswi5gda65392xk.png" alt="Image description" width="800" height="408"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If after running systemctl status nginx and it is not active, run this cmd;&lt;br&gt;
&lt;code&gt;systemctl enable nginx&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;At this point, the web page can be accessed via the public IP of the server.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;http://&amp;lt;your-server-ip&amp;gt;/&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1ta1stgaisrjbh0qzduu.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1ta1stgaisrjbh0qzduu.png" alt="Image description" width="677" height="140"&gt;&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Learning Outcome&lt;/strong&gt;&lt;br&gt;
This task demonstrates my ability to automate the configuration of a web server and deliver a functional web server.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Looking to Hire the Best Engineers&lt;/strong&gt;&lt;br&gt;
HNG connects companies with the best engineers suited to their needs. Looking for top-tier talent to handle your DevOps, cloud infrastructure, and CI/CD tasks, HNG has the best developers available for hire and freelance jobs anywhere in the world.&lt;/p&gt;

&lt;p&gt;Explore specialized talents available for hire:&lt;br&gt;
&lt;a href="https://hng.tech/hire/devops-engineers" rel="noopener noreferrer"&gt;Devops Engineers&lt;/a&gt;&lt;br&gt;
&lt;a href="https://hng.tech/hire/linux-developers" rel="noopener noreferrer"&gt;Linux Developers&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Maximizing the Power of Open Source: A Guide to Security Management with OpenVAS</title>
      <dc:creator>Akalezi Caleb🌴</dc:creator>
      <pubDate>Tue, 27 Jun 2023 08:25:31 +0000</pubDate>
      <link>https://dev.to/calebsgram/maximizing-the-power-of-open-source-a-guide-to-security-management-with-openvas-4gcf</link>
      <guid>https://dev.to/calebsgram/maximizing-the-power-of-open-source-a-guide-to-security-management-with-openvas-4gcf</guid>
      <description>&lt;p&gt;In today's rapidly evolving digital landscape, ensuring the security of your systems and networks is important. With cyber threats becoming more advanced, organizations need robust security solutions to safeguard their sensitive data and protect their valuable assets. OpenVAS, an open-source vulnerability scanning tool, has emerged as a powerful ally in the fight against cybercrime. &lt;/p&gt;

&lt;p&gt;It is designed to help organizations identify and manage security weaknesses in their systems and networks. It provides a comprehensive solution for vulnerability management, enabling proactive security measures and reducing the risk of potential attacks.&lt;/p&gt;

&lt;p&gt;This project covers:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Why your organization should embrace open source and use OpenVAS as part of your project security management strategy.&lt;/li&gt;
&lt;li&gt;A step-by-step guide on how to properly configure OpenVAS.&lt;/li&gt;
&lt;li&gt;Additional capabilities of OpenVAS beyond vulnerability scanning.&lt;/li&gt;
&lt;li&gt;How to identify open hosts within a network, set up a network scan with OpenVAS, configure scan parameters, and interpret results.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Thanks to its transparency, flexibility, and community-driven development, open-source software has grown significantly in popularity in recent years . Open-source technologies, such as OpenVAS, offer unmatched freedom in comparison to commercial solutions, as they allow users to access, modify, and share the source code. As a global community of developers works together to constantly improve the software, this transparency encourages creativity.&lt;/p&gt;

&lt;p&gt;With the help of OpenVAS, enterprises may detect vulnerabilities, evaluate risks, and put in place the appropriate security measures. OpenVAS checks networks, systems, and applications for potential security holes using a sizable vulnerability database, giving you useful information to bolster your defenses. Vulnerability detection, configuration audits, compliance checks, and extensive reporting capabilities are just a few of its powerful feature sets.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Why OpenVAS ?&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;OpenVAS offers a vast database of Network Vulnerability Tests (NVTs) that cover a wide range of vulnerabilities. These tests enable the detection of known security vulnerabilities in operating systems, applications, and network devices.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;OpenVAS is designed to scale according to the size and complexity of the environment. It can handle scanning tasks for small networks as well as large and distributed infrastructures. The tool allows customization of scan parameters, enabling users to tailor scans to specific needs, including target selection, scan intensity, scheduling and automation.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;OpenVAS is built with an open architecture, allowing integration with other security tools and workflows. It provides APIs and supports standard formats like Open Vulnerability and Assessment Language (OVAL) and Common Vulnerabilities and Exposures (CVE), facilitating seamless integration into existing security frameworks.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Prerequisites&lt;/strong&gt;&lt;br&gt;
To get started in this lab ,we must have the following:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;I assume you have &lt;a href="https://www.virtualbox.org/"&gt;Oracle VM Virtualbox&lt;/a&gt; installed.&lt;/li&gt;
&lt;li&gt;Kali linux ISO set up. To install Kali linux , check &lt;a href="https://www.kali.org/get-kali/"&gt;here&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Familiar with cybersecurity and networking concepts.&lt;/li&gt;
&lt;li&gt;Familiar with linux and bash command line.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Configuring &lt;a href="https://github.com/greenbone/openvas-scanner/blob/main/INSTALL.md"&gt;OpenVAS&lt;/a&gt;&lt;/strong&gt;&lt;br&gt;
On the kali terminal, run this command to gain root access:&lt;br&gt;
&lt;code&gt;sudo su&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;To make sure we are up to date, run this command:&lt;br&gt;
&lt;code&gt;apt-get update &amp;amp;&amp;amp; apt-get install&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgdum6q2iv472ac8c9kpl.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgdum6q2iv472ac8c9kpl.png" alt="Image description" width="668" height="329"&gt;&lt;/a&gt;&lt;br&gt;
&lt;strong&gt;Step 1&lt;/strong&gt;&lt;br&gt;
To install OpenVAS, run this command:&lt;br&gt;
&lt;code&gt;apt-get install openvas&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fawrdpaa8uvits9jhoxhk.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fawrdpaa8uvits9jhoxhk.png" alt="Image description" width="497" height="497"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 2&lt;/strong&gt;&lt;br&gt;
To setup and start the OpenVAS services, run the command:&lt;br&gt;
&lt;code&gt;gvm-setup&lt;/code&gt;&lt;br&gt;
&lt;strong&gt;NOTE&lt;/strong&gt; : The setup takes time, mine took up to 12 minutes. Be patient.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjfqhwmbr748t06evfsee.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjfqhwmbr748t06evfsee.png" alt="Image description" width="718" height="523"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 3&lt;/strong&gt;&lt;br&gt;
After set up, a password is generated , copy it. To save this to the Desktop , in a .txt file, run these commands;&lt;br&gt;
&lt;code&gt;cd Desktop&lt;/code&gt;&lt;br&gt;
&lt;code&gt;nano gvm-pass.txt&lt;/code&gt;&lt;br&gt;
paste the password and save.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 4&lt;/strong&gt;&lt;br&gt;
Now, we check the installation status of OpenVAS with the command:&lt;br&gt;
&lt;code&gt;gvm-check-setup&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fukvz7kq5q3cb1f2emos8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fukvz7kq5q3cb1f2emos8.png" alt="Image description" width="531" height="106"&gt;&lt;/a&gt;&lt;br&gt;
The installation is not complete, I was prompted to run this command&lt;/p&gt;

&lt;p&gt;&lt;code&gt;sudo runuser -u _gvm --greenbone-nvt-sync&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Now, I run the&lt;code&gt;gvm-check-setup&lt;/code&gt;command again to be sure everything is good.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 5&lt;/strong&gt;&lt;br&gt;
Lets check the logs from OpenVAS. To do this, run these commands;&lt;br&gt;
&lt;code&gt;cd  /var/log/gvm&lt;/code&gt;&lt;br&gt;
&lt;code&gt;tail -f gvmd.log&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fuylsxkrxjbwy4m6oqwtk.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fuylsxkrxjbwy4m6oqwtk.png" alt="Image description" width="800" height="194"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;No SCAP database found. The feeds may be taking a longer time to get to the computer.&lt;br&gt;
Open a vertical terminal and run this command &lt;br&gt;
&lt;code&gt;sudo su&lt;/code&gt;&lt;br&gt;
To be sure the feeds are working ,run these commands:&lt;br&gt;
&lt;code&gt;greenbone-feed-sync  - -type GVMD_DATA&lt;/code&gt; &lt;br&gt;
&lt;code&gt;greenbone-feed-sync  - -type SCAP&lt;/code&gt;&lt;br&gt;
&lt;code&gt;greenbone-feed-sync  - -type CERT&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fm3e8zz7qc63t4v78o3v3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fm3e8zz7qc63t4v78o3v3.png" alt="Image description" width="657" height="447"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 6&lt;/strong&gt;&lt;br&gt;
To start the OpenVAS daemon, run this command:&lt;br&gt;
&lt;code&gt;gvm-start&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;NOTE: OpenVAS will open the Web GUI automatically. If you get a message saying OpenVAS is already running, you may need to restart OpenVAS. To do that, run these commands&lt;br&gt;
&lt;code&gt;gvm-stop&lt;/code&gt;&lt;br&gt;
&lt;code&gt;gvm-start&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;This will boot the web UI &amp;gt; Advanced &amp;gt; accept the risk.&lt;br&gt;
Username is &lt;em&gt;admin&lt;/em&gt; by default&lt;br&gt;
For the password saved on your desktop;&lt;br&gt;
&lt;code&gt;cd Desktop&lt;/code&gt;&lt;br&gt;
&lt;code&gt;gedit gvm-pass.txt&lt;/code&gt;&lt;br&gt;
Copy the password, paste and we're in&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fr9nmzymsr4jlkhmnx0cc.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fr9nmzymsr4jlkhmnx0cc.png" alt="Image description" width="800" height="346"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;OpenVAS can be considered a project security management tool.&lt;br&gt;
You can assign users to mitigate vulnerabilities found, create remediation tickets.&lt;br&gt;
It can also set alerts, schedule scans, and automate resilience.&lt;br&gt;
OpenVAS works with compliance, and compliance audits can be created for the system.&lt;/p&gt;

&lt;p&gt;Navigate to Scanners.&lt;br&gt;
OpenVAS Defaults are used the most, however, if you are not allowed to scan constantly on the network, you use the CVE.&lt;br&gt;
CVE uses the collected data to check for new vulnerabilities that may have been introduced to the system. &lt;/p&gt;

&lt;p&gt;Navigate to Configuration &amp;gt; port lists.&lt;br&gt;
To scan all TCP and UDP ports, we need to create a new port list.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbq7sqf567un39ituua6s.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbq7sqf567un39ituua6s.png" alt="Image description" width="800" height="368"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Setting up a Network Scan With OpenVAS&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Update the feeds from OpenVAS.
Best to do this before we actually start to scan. OpenVAS updates their feeds every few days. To update, run this command:&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;code&gt;gvm-feed-update&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fe5e1r2hi68zw6au747qw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fe5e1r2hi68zw6au747qw.png" alt="Image description" width="745" height="609"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Run this command:&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;code&gt;traceroute google.com&lt;/code&gt;&lt;br&gt;
The IP result for me is 192.168.100.1&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;To get the Hosts that are up in the subnet, run this nMap command:&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;code&gt;nmap 192.168.100.1/24&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvdo3nsytb794uq8bvlx6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvdo3nsytb794uq8bvlx6.png" alt="Image description" width="539" height="537"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;To return the Hosts that are up in an organized list, run this command:&lt;br&gt;
&lt;code&gt;nmap -sP 192.168.100.1/24 | awk  '/is up/  {print up}; {gsub (/\(|\)/,""); up = $NF}'&lt;/code&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flxg5d20scom7pogsif1x.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flxg5d20scom7pogsif1x.png" alt="Image description" width="721" height="214"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Copy the IP addresses to a .txt file on your desktop with the command:&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;code&gt;nano Desktop/ip-list.txt&lt;/code&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Run &lt;code&gt;gvm-start&lt;/code&gt; &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;New scan &amp;gt; scan target &amp;gt; new &amp;gt; Hosts &amp;gt; from file &amp;gt; Browse to Desktop and select the ip-list file .&lt;br&gt;
Port list &amp;gt; all TCP and UDP ports..save.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fc05eg5ot6wsg6pk66zzc.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fc05eg5ot6wsg6pk66zzc.png" alt="Image description" width="800" height="342"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;OpenVAS can be configured to remotely access the computer via SSH. To better understand how to configure OpenSSH, &lt;a href="https://dev.to/calebsgram/mastering-ssh-configuration-enhancing-security-with-key-based-authentication-42i3"&gt;check here&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1d1r4p3su0uh1fb6sg62.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1d1r4p3su0uh1fb6sg62.png" alt="Image description" width="800" height="436"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;QoD refers to the quality of detection. The higher the quality of detection, the less amount of false positives. &lt;em&gt;BUT&lt;/em&gt; there's a catch. There could be a vulnerability at 60% QoD that may not be caught by a higher QoD. &lt;br&gt;
Its best to do 2 scans, one at QoD of 70% and another at 30%. Then compare the results.&lt;br&gt;
Scan Config option, Full and fast is the most used, has all NVT used in OpenVAS.&lt;/p&gt;

&lt;p&gt;At this point, save and start the scanning.&lt;br&gt;
Note, this is an in depth and long process.&lt;br&gt;
Depending on the size of your network, this process can take hours, up to days . Relax.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fizi7a8r09eknxpo2pcim.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fizi7a8r09eknxpo2pcim.png" alt="Image description" width="800" height="334"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This scan lasted for an hour.&lt;br&gt;
You may install a Metasploitable server on the background and run a second scan.&lt;/p&gt;

</description>
      <category>opensource</category>
      <category>cybersecurity</category>
      <category>tutorial</category>
      <category>beginners</category>
    </item>
    <item>
      <title>Mastering SSH Configuration: Enhancing Security with Key-Based Authentication</title>
      <dc:creator>Akalezi Caleb🌴</dc:creator>
      <pubDate>Sat, 06 May 2023 21:57:45 +0000</pubDate>
      <link>https://dev.to/calebsgram/mastering-ssh-configuration-enhancing-security-with-key-based-authentication-42i3</link>
      <guid>https://dev.to/calebsgram/mastering-ssh-configuration-enhancing-security-with-key-based-authentication-42i3</guid>
      <description>&lt;p&gt;Secure Shell (SSH) dominates remote computer access, providing a secure and efficient way to connect to systems. OpenSSH, an open source implementation of SSH, follows a client-server model for secure communication.&lt;br&gt;
By default, &lt;strong&gt;OpenSSH&lt;/strong&gt; operates on &lt;strong&gt;port 22&lt;/strong&gt;, ensuring compatibility. An important aspect of OpenSSH configuration is key-based authentication, offering increased security and a simplified login process.&lt;/p&gt;

&lt;p&gt;As organizations strive to protect their systems and sensitive data, understanding and implementing key-based authentication becomes crucial. This lab explores SSH configuration with a focus on leveraging key-based authentication. By generating cryptographic key pairs and configuring SSH servers and clients, administrators can improve security and reduce risks associated with passwords.&lt;/p&gt;

&lt;p&gt;This tutorial covers server configuration, key pair generation, key-based authentication setup, disabling password authentication, and optional port customization for further hardening. Gain expertise in securing remote access and safeguarding sensitive data through SSH configuration techniques.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Prerequisites&lt;/strong&gt;&lt;br&gt;
To follow up , I assume you have Oracle VM Virtualbox installed.&lt;br&gt;
For our server, we’re using Kali linux VM.&lt;br&gt;
As our client, we are using Fedora Linux Distro.&lt;br&gt;
Familiar with linux and bash command line.&lt;br&gt;
Familiar with networking concepts and operating systems.&lt;/p&gt;

&lt;p&gt;So, lets start&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 1&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Check if ssh is installed on both the client and server.&lt;/strong&gt;&lt;br&gt;
Running &lt;code&gt;ssh -V&lt;/code&gt;on the command prompt returns the version of OpenSSH installed in the system .&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F47m2eso8xypu7hy9ppze.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F47m2eso8xypu7hy9ppze.png" alt="Image description" width="402" height="62"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 2&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Configure the ssh server to accept ssh connection.&lt;/strong&gt;&lt;br&gt;
This is done by ensuring the ssh daemon is properly running on the server.&lt;br&gt;
Run this command to check if the ssh daemon is installed,&lt;br&gt;
&lt;code&gt;Sudo systemctl status ssh&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;If the status is not found, you’ll need to install the openssh-server package.&lt;br&gt;
To install this, run the following commands..&lt;br&gt;
&lt;code&gt;Sudo apt update&lt;/code&gt;&lt;br&gt;
&lt;code&gt;Sudo apt install openssh-server&lt;/code&gt;&lt;br&gt;
Then we run the &lt;code&gt;status&lt;/code&gt; command again to check &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmvtoe04c2ksq6tlbifqu.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmvtoe04c2ksq6tlbifqu.png" alt="Image description" width="600" height="209"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;To enable the openssh-server, we run the command,&lt;br&gt;
&lt;code&gt;Sudo systemctl enable ssh&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3mzjv2rpp3bqns3jrtia.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3mzjv2rpp3bqns3jrtia.png" alt="Image description" width="602" height="204"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 3&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Get the IPv4 address and username of the server.&lt;/strong&gt;&lt;br&gt;
Running &lt;code&gt;hostname -I&lt;/code&gt; on the terminal retrieves the IP address,&lt;br&gt;
&lt;code&gt;whoami&lt;/code&gt; retrieves the username.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F07ocm8sqlzq6gw16n6be.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F07ocm8sqlzq6gw16n6be.png" alt="Image description" width="252" height="277"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 4&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Now, we connect to the server from the client computer in a syntax that looks like an email address.&lt;/strong&gt;&lt;br&gt;
The syntax is &lt;code&gt;ssh serverusername@serverIP&lt;/code&gt;&lt;br&gt;
In my case, I run  &lt;code&gt;ssh caleb@192.168.100.6&lt;/code&gt;&lt;br&gt;
You’ll be required to input the server password , accept fingerprints and you are in the shell of the server.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F670j61niw6epo582os97.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F670j61niw6epo582os97.png" alt="Image description" width="746" height="426"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 5&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Keys-based authentication configuration&lt;/strong&gt;&lt;br&gt;
The client computer generates a pair of keys, a public and private key that are cryptographically matched.&lt;br&gt;
The public key is uploaded to the server and the private key is hidden on the computer..&lt;br&gt;
&lt;code&gt;Ssh-keygen&lt;/code&gt; is the command line tool used for generating SSH key pairs.&lt;br&gt;
Now to generate a key pair, save the pair in the hidden .ssh filepath and add a comment to the keys, i run this command.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;ssh-keygen  -t  ed25519  -f  ~/.ssh/caleb  -C  "calebfedora"&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;code&gt;Ssh-keygen&lt;/code&gt; is the program responsible for generating the ssh key pairs.;&lt;br&gt;
&lt;code&gt;-t  ed25519&lt;/code&gt; specifies to use the ed25519 algorithm to generate the ssh keys&lt;br&gt;
&lt;code&gt;-f  ~/.ssh/caleb&lt;/code&gt; specifies to save the generated keys in the filename- caleb, in the hidden directory .ssh &lt;br&gt;
&lt;code&gt;-C  “calebfedora”&lt;/code&gt; is a simple way to explain who the key is for. I’ve set the comment here to “calebfedora”.&lt;/p&gt;

&lt;p&gt;You will asked to input a passphrase, and again. At this point, your screen should look like this and the keys have been created.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0q727nnp3nbt3fun7pwz.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0q727nnp3nbt3fun7pwz.png" alt="Image description" width="642" height="473"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Listing the hidden dir with the command&lt;br&gt;
&lt;code&gt;ls .ssh&lt;/code&gt; will show you the public and private keys generated.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 6&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Send the public key to the remote server using the &lt;code&gt;ssh-copy-id&lt;/code&gt; command.&lt;/strong&gt; &lt;br&gt;
The syntax is &lt;br&gt;
&lt;code&gt;Ssh-copy-id -i /root/.ssh/caleb.pub caleb@192.168.100.6&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;code&gt;Ssh-copy-id&lt;/code&gt; is the  command used to install or copy the public key to a remote server for passwordless SSH authentication.&lt;br&gt;
&lt;code&gt;-i /root/.ssh/caleb.pub&lt;/code&gt; specifies the path to the public key file that will be copied to the remote server. The .pub extension indicates that it is the public key file associated with the SSH key pair.&lt;br&gt;
&lt;code&gt;caleb@192.168.100.6&lt;/code&gt; specifies the destination server where the public key will be copied.&lt;br&gt;
When you run this command, it will copy the contents of the caleb.pub file to the appropriate location on the remote server, allowing you to authenticate with your private key instead of using a password when connecting via SSH.&lt;/p&gt;

&lt;p&gt;You will be prompted for the server's password, your screen should look this indicating the key was added successfully.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fclvvd0v7p5ck60i7ajs5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fclvvd0v7p5ck60i7ajs5.png" alt="Image description" width="647" height="413"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Running the ssh command again&lt;br&gt;
&lt;code&gt;ssh caleb@192.168.100.6&lt;/code&gt; will ask me for the passphrase.&lt;br&gt;
In linux, this passphrase will be saved to the keychain by default, meaning we won’t have to enter this passphrase when next we want to run the ssh connection.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 7&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Turning off password authentication on the server&lt;/strong&gt;&lt;br&gt;
Disabling password authentication is an essential measure in SSH hardening to protect the server's shell from brute force attacks and similar threats.&lt;br&gt;
On the server, we will edit the ssh daemon config file, run this command to access the file..&lt;/p&gt;

&lt;p&gt;&lt;code&gt;sudo  nano  /etc/ssh/sshd_config&lt;/code&gt;&lt;br&gt;
Scroll down to PasswordAuthentication, comment out and change yes to no.&lt;br&gt;
Your screen should look like this&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fajq2g46rfekdi9gcee7c.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fajq2g46rfekdi9gcee7c.png" alt="Image description" width="520" height="55"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Save this change and restart the ssh daemon  with the command&lt;br&gt;
&lt;code&gt;Sudo systemctl reload ssh&lt;/code&gt;&lt;br&gt;
Another ssh hardening  technique is to change the default port away from 22 to another port number.&lt;/p&gt;

&lt;p&gt;For instance,  if we change the port to 6789, this will change the syntax to &lt;br&gt;
&lt;code&gt;ssh -p 6789 caleb@192.168.100.6&lt;/code&gt;&lt;/p&gt;

</description>
      <category>linux</category>
      <category>opensource</category>
      <category>cybersecurity</category>
      <category>datasecurity</category>
    </item>
    <item>
      <title>Endpoint Security: Protecting Your Devices from Cyber Threats</title>
      <dc:creator>Akalezi Caleb🌴</dc:creator>
      <pubDate>Sat, 29 Apr 2023 14:59:08 +0000</pubDate>
      <link>https://dev.to/calebsgram/endpoint-security-protecting-your-devices-from-cyber-threats-59ck</link>
      <guid>https://dev.to/calebsgram/endpoint-security-protecting-your-devices-from-cyber-threats-59ck</guid>
      <description>&lt;p&gt;Endpoint security is a crucial aspect of cybersecurity that focuses on securing endpoints, which are devices or systems that are used to access a network. Endpoint security involves a combination of technologies and strategies that are designed to protect endpoints from cyber threats and ensure the confidentiality, integrity, and availability of data.&lt;/p&gt;

&lt;p&gt;Endpoints can include desktop and laptop computers, mobile devices, servers, and other devices connected to a network. These devices are vulnerable to a wide range of cyber threats, including malware, phishing attacks, ransomware, and other types of cyber attacks. Endpoint security aims to prevent these attacks from occurring or mitigate their impact when they do occur.&lt;/p&gt;

&lt;p&gt;Endpoint security solutions typically include antivirus and anti-malware software, firewalls, intrusion prevention systems (IPS), endpoint detection and response (EDR) tools, and data encryption technologies. These solutions work together to provide multiple layers of protection for endpoints, ensuring that they are secure against both known and unknown threats.&lt;/p&gt;

&lt;p&gt;Antivirus and anti-malware software is one of the most important components of endpoint security. These tools scan devices for viruses, worms, Trojan horses, and other types of malware that could compromise the security of the endpoint. The software can detect and remove malware, preventing it from spreading to other endpoints on the network.&lt;/p&gt;

&lt;p&gt;Firewalls are another essential component of endpoint security. They act as a barrier between the endpoint and the network, blocking unauthorized access to the endpoint and preventing malware from communicating with command and control servers. Firewalls can also prevent unauthorized access to sensitive data stored on the endpoint.&lt;/p&gt;

&lt;p&gt;Intrusion prevention systems (IPS) are designed to detect and block malicious network traffic before it reaches the endpoint. These tools use signature-based detection and behavior-based detection to identify and block malicious activity.&lt;/p&gt;

&lt;p&gt;Endpoint detection and response (EDR) tools are used to detect and respond to advanced threats that may evade traditional security solutions. EDR tools collect data on endpoint activity, analyze it for signs of suspicious behavior, and alert security teams when a potential threat is detected. They can also provide incident response capabilities, allowing security teams to quickly isolate and contain threats.&lt;/p&gt;

&lt;p&gt;Data encryption technologies are used to protect sensitive data stored on endpoints. Encryption transforms data into a code that can only be read by authorized parties with the correct decryption key. This makes it more difficult for attackers to steal or access sensitive information.&lt;/p&gt;

&lt;p&gt;Endpoint security strategies also include best practices for endpoint management and user education. These strategies include patch management, which involves regularly updating software and operating systems to address known vulnerabilities. They also include employee training and awareness programs to teach users about the risks of cyber threats and how to avoid them.&lt;/p&gt;

&lt;p&gt;In conclusion, endpoint security is a critical component of cybersecurity that aims to protect endpoints from cyber threats and ensure the confidentiality, integrity, and availability of data. Endpoint security solutions include antivirus and anti-malware software, firewalls, IPS, EDR tools, and data encryption technologies. Endpoint security strategies also include best practices for endpoint management and user education. By implementing endpoint security solutions and best practices, organizations can protect their endpoints from cyber threats and reduce the risk of data breaches and other cybersecurity incidents.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Vulnerability Assessment With Nessus</title>
      <dc:creator>Akalezi Caleb🌴</dc:creator>
      <pubDate>Wed, 19 Apr 2023 16:11:29 +0000</pubDate>
      <link>https://dev.to/calebsgram/vulnerability-assessment-with-nessus-fg3</link>
      <guid>https://dev.to/calebsgram/vulnerability-assessment-with-nessus-fg3</guid>
      <description>&lt;p&gt;&lt;strong&gt;Vulnerability assessment&lt;/strong&gt; is a process of identifying weaknesses and security gaps in a system or network that could be exploited by attackers. It involves scanning, testing and analysing the system to find vulnerabilities and prioritize them based on their severity to take actions to address them.&lt;/p&gt;

&lt;p&gt;A bug in code or a flaw in software design can be exploited via an authenticate or unauthenticated attacker.&lt;br&gt;
A gap in security procedures or weakness in internal controls can also be exploited causing a security breach.&lt;/p&gt;

&lt;p&gt;In this tutorial, we will conduct &lt;strong&gt;credentials vulnerability assessment&lt;/strong&gt; using Nessus on a Vm Windows Host and remediate identified vulnerabilities.&lt;/p&gt;

&lt;p&gt;Nessus is a vulnerability scanner that operates as a web application to scan for vulnerabilities in networking devices and systems.&lt;/p&gt;

&lt;p&gt;In most cases as an ethical hacker, when performing vulnerability scans, you won’t be given remote sharing privileges, to gain remote access to the device to perform in depth scans - credential scans.&lt;br&gt;
This tutorial will walk you through the process of enabling remote sharing services and creating a key in the VM’s registry to perform a thorough (credentials) scan.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Prerequisites&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;To follow up , I assume you have Oracle VM Virtualbox installed. &lt;br&gt;
Windows 10 ISO file lauched on your VM.&lt;br&gt;
Nessus Essentials account set up and verified. &lt;br&gt;
Familiar with networking concepts and operating systems.&lt;br&gt;
Familiar with Windows Powershell&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;So, Let’s Start&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 1&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Boot your Windows 10 in your VM , run a command to get the ipv4 address.&lt;br&gt;
Running &lt;code&gt;ipconfig&lt;/code&gt; on the command prompt returns all ip information available.&lt;br&gt;
You may ping the IP address on your local computer to see if you will get a response.&lt;br&gt;
&lt;code&gt;ping -t 192.168.0.105&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F4iecagjm2ewjjc0nkci2.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F4iecagjm2ewjjc0nkci2.png" alt="Image description" width="390" height="303"&gt;&lt;/a&gt;&lt;br&gt;
-t means to loop the ping.&lt;br&gt;
Ctrl + c cuts this loop.&lt;/p&gt;

&lt;p&gt;For this sake of this tutorial, we will make some administrative changes to the Vm windows to make it more vulnerable and expand the scope of the scan.&lt;br&gt;
We will ;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;disable the firewall profiles&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;enable remote sharing service to allow Nessus gain remote access&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;alter the user control settings to further reduce the security notifications on the VM&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;add a special key to the VMware registry for Nessus to perform Credentials scans&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;NOTES&lt;/strong&gt;: When configuring your windows 10 iso, be sure to set the network adapter to bridged. Bridged brings the VM to the same network as your local computer.&lt;br&gt;
If you don’t get Ping command, read up on common protocols and ports.&lt;br&gt;
Ping is an ICMP protocol.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 2&lt;/strong&gt;: Go to start and run wf.msc&lt;br&gt;
This is a shortcut to get to the windows defender firewall settings.&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fr4kmwuvcen6io8xbxi1a.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fr4kmwuvcen6io8xbxi1a.png" alt="Image description" width="351" height="150"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;To disable firewall, you want to disable the domain, public and private profile.&lt;br&gt;
Pinging the IP again from your local computer should return a better response at this point.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 3&lt;/strong&gt;: Go to start and run services, navigate to Remote Registry Properties and enable this.&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F4zpv6lzfvfayyzwjvuhw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F4zpv6lzfvfayyzwjvuhw.png" alt="Image description" width="402" height="402"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 4&lt;/strong&gt;:  Search user account control. Bring this down to the very least.&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgaswzir9rd4ea47v9hrb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgaswzir9rd4ea47v9hrb.png" alt="Image description" width="745" height="435"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 5&lt;/strong&gt;: Search registry editor and open the application&lt;/p&gt;

&lt;p&gt;Navigate to Local machine &amp;gt; software &amp;gt; microsoft &amp;gt; windows &amp;gt; current version &amp;gt; policies &amp;gt; system &amp;gt; open this path.&lt;br&gt;
Your screen should look like this&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvwtwnlgq822ujticv48s.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvwtwnlgq822ujticv48s.png" alt="Image description" width="800" height="435"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;We are creating a new Dword here and naming it LocalAccountTokenFilterPolicy.&lt;br&gt;
Edit the DWord ValueData to 1 and leave the rest as default.&lt;br&gt;
This should restart the VM.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 6&lt;/strong&gt;: Go to your web browser and log into your Nessus essentials account&lt;br&gt;
Navigate to new scan and choose Basic Network scan.&lt;br&gt;
Settings, target is the IP of the Vm&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqglgou20p4wv43i08pkj.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqglgou20p4wv43i08pkj.png" alt="Image description" width="800" height="333"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Go to credentials and tap on Windows.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5hdkwk0rq5f9m1kn6woi.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5hdkwk0rq5f9m1kn6woi.png" alt="Image description" width="800" height="359"&gt;&lt;/a&gt;&lt;br&gt;
Username : Go to the VM command prompt and run &lt;code&gt;whoami&lt;/code&gt; to be sure of this. &lt;br&gt;
password and save this&lt;br&gt;
Go to my scan and launch the scan..&lt;br&gt;
Give this time to complete and you’ll see your vulnerabilities in order of severities.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffrjwhr97s0lwgmg5f48l.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffrjwhr97s0lwgmg5f48l.png" alt="Image description" width="800" height="363"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Note&lt;/strong&gt;: While reporting your finding as an ethical hacker, you may not report on all of the vulnerabilities. Most organizations focus on the critical and high vulnerabilities.&lt;/p&gt;

&lt;p&gt;Nessus also provides solutions on how to remediate identified vulnerabilities.&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fv1bcm2mqnylxqjly6ny0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fv1bcm2mqnylxqjly6ny0.png" alt="Image description" width="800" height="365"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In most cases, these vulnerabilities exists around outdated security patches so be sure to keep this automated in your organization.&lt;/p&gt;

&lt;p&gt;You may install deprecated software in the VM that poses high security threats and rescan.&lt;br&gt;
Compare the vulnerabilities before you installed the software ( for instance, a really old version of Firefox ) and after the installation.&lt;br&gt;
You’ll notice a high number of critical and high vulnerabilities and an expected remediation to update Firefox.&lt;/p&gt;

</description>
      <category>network</category>
      <category>cybersecurity</category>
      <category>vulnerabilityassessment</category>
      <category>networksecurity</category>
    </item>
    <item>
      <title>Networking101</title>
      <dc:creator>Akalezi Caleb🌴</dc:creator>
      <pubDate>Thu, 06 Apr 2023 16:29:32 +0000</pubDate>
      <link>https://dev.to/calebsgram/networking101-pna</link>
      <guid>https://dev.to/calebsgram/networking101-pna</guid>
      <description>&lt;p&gt;In today's highly connected world, networking is a necessity. It is networking that allows us to connect with others and share information, whether it is accessing the internet on our smartphones or sharing files at work. This article will explain how data is transmitted over a network, the different types of network topologies, and the role of networking protocols such as TCP/IP.&lt;/p&gt;

&lt;p&gt;At the very least, a network is two or more computer systems that are linked by a transmission medium and share one or two protocols that enable them to exchange data. Various types of connectors such as cables and wireless technologies can be used as transmission medium, including Ethernet cables, Wi-Fi, and Bluetooth. The devices can exchange data, such as files, messages, and media, once they are connected. You may think of protocols as a set of rules for exchanging data in a structured format or an SI unit in a way. I will talk more on data exchange structure in a later article. &lt;/p&gt;

&lt;p&gt;In order to effectively network, you must understand how data is transmitted over a network. Over a network, data is sent as packets, which are small units of data. A packet includes both the transmitted data and the destination address, which indicates the location where the packet must be sent. As the packet is transmitted through the network, it gets fragmented into smaller units called frames, which are separately transmitted. Once all frames reach the intended destination, they are reassembled into the original packet.&lt;/p&gt;

&lt;p&gt;Network topologies refers to the arrangement of end devices and how they are interconnected in a network. This guides the route data moves from one segment to get to another segment of the network as well as sharing of information within the segment. A variety of network topologies exist, such as bus, ring, star, and mesh. In a bus topology, a single cable connects all devices, while in a ring topology, devices are arranged in a circular formation with each device linked to two others. In a star topology, a central hub or switch connects all devices, whereas in a mesh topology, each device has a direct physical or wireless connection to every other node on the network. Drawbacks exists with these topologies to various degrees and hybrid network topology exists to limit the inherent weakness of each topology. A hybrid network is an interconnection of two or more basic network topologies. &lt;/p&gt;

&lt;p&gt;Networking protocols, like TCP/IP, encompass a set of guidelines that regulate the process of data transmission across a network. TCP/IP is the most extensively used networking protocol worldwide, and it is utilized for data transfer over the internet and other networks. TCP (Transmission Control Protocol) is responsible for guaranteeing accurate and reliable data transmission, while IP (Internet Protocol) is responsible for directing data traffic between networks.&lt;/p&gt;

&lt;p&gt;In conclusion, a basic understanding of networking is imperative for anyone who uses computers or other digital devices. By comprehending the process of data transmission across a network, the various types of network topologies, and the function of networking protocols such as TCP/IP, individuals can effectively tackle network problems, create and manage network infrastructure, and enhance the overall performance of their networks. Whether one is a home user, a small business owner, or a network administrator, having a basic understanding of networking is indispensable in today's digital era.&lt;/p&gt;

</description>
    </item>
  </channel>
</rss>
