Merge branch 'learn-linux' into 'main'
Learn linux See merge request AHMZA/blog!8
@@ -181,7 +181,7 @@ This posts barely scratches the surface of what *NGINX* can do, I would
|
|||||||
highly recommend reading more into this great piece of software !!
|
highly recommend reading more into this great piece of software !!
|
||||||
|
|
||||||
My reverse proxy handling non existent traffic
|
My reverse proxy handling non existent traffic
|
||||||

|

|
||||||
|
|
||||||
Give it a few months and this blog will ...
|
Give it a few months and this blog will ...
|
||||||

|

|
||||||
|
|||||||
@@ -26,7 +26,7 @@ gain access. With further configuration of SSH we can make the service
|
|||||||
a lot more secure.
|
a lot more secure.
|
||||||
|
|
||||||
# **Configure SSH**
|
# **Configure SSH**
|
||||||

|

|
||||||
> **Famous last words:** Configuring SSH like many things in Linux is
|
> **Famous last words:** Configuring SSH like many things in Linux is
|
||||||
as simple as editing a few config files
|
as simple as editing a few config files
|
||||||
|
|
||||||
@@ -123,7 +123,7 @@ sudo vim /etc/ssh/sshd_config
|
|||||||
For a new user this might be daunting. Take your time and you will be
|
For a new user this might be daunting. Take your time and you will be
|
||||||
fine 😊
|
fine 😊
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
**Lines we want to modify**
|
**Lines we want to modify**
|
||||||
|
|
||||||
@@ -268,7 +268,7 @@ Subsystem sftp /usr/lib/openssh/sftp-server
|
|||||||
# PermitTTY no
|
# PermitTTY no
|
||||||
# ForceCommand cvs server
|
# ForceCommand cvs server
|
||||||
```
|
```
|
||||||

|

|
||||||
|
|
||||||
**Now lets explain what we just did**
|
**Now lets explain what we just did**
|
||||||
* **Protocol 2** - released in 2006, SSH2 introduced improved
|
* **Protocol 2** - released in 2006, SSH2 introduced improved
|
||||||
@@ -302,7 +302,7 @@ roll back the changes and troubleshoot.
|
|||||||
|
|
||||||
# **Success**
|
# **Success**
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
# **Setting up** ***Fail2Ban***
|
# **Setting up** ***Fail2Ban***
|
||||||
_Fail2Ban_ is an intrusion prevention tool. Although we are slowing
|
_Fail2Ban_ is an intrusion prevention tool. Although we are slowing
|
||||||
@@ -394,7 +394,7 @@ refused.
|
|||||||
ssh test@host -p 2222
|
ssh test@host -p 2222
|
||||||
```
|
```
|
||||||
_Fail2Ban_ should do something along the lines of ...
|
_Fail2Ban_ should do something along the lines of ...
|
||||||

|

|
||||||
log back in as your normal user, remove the test user and restore the
|
log back in as your normal user, remove the test user and restore the
|
||||||
sshd config.
|
sshd config.
|
||||||
|
|
||||||
@@ -422,4 +422,4 @@ a remote host, re-configure the sshd config to lockdown authentication
|
|||||||
and last but not least install and configure Fail2Ban to block pesky
|
and last but not least install and configure Fail2Ban to block pesky
|
||||||
attackers.
|
attackers.
|
||||||
|
|
||||||

|

|
||||||
|
|||||||
@@ -0,0 +1,102 @@
|
|||||||
|
---
|
||||||
|
title: You Need to Learn Linux 🐧
|
||||||
|
date: 2021-12-17T19:16:50Z
|
||||||
|
author: "ahmza"
|
||||||
|
draft: false
|
||||||
|
weight:
|
||||||
|
|
||||||
|
tags: ["Linux"]
|
||||||
|
description: "Ever wanted to learn Linux ? Well no better time than now to learn"
|
||||||
|
canonicalURL: "https://blog.ahmza.com/Page%28/posts/you-need-to-learn-linux.md%29"
|
||||||
|
|
||||||
|
cover:
|
||||||
|
image: "/img/learn-linux/learn-linux.gif" # image path/url
|
||||||
|
alt: "learn-linux" # alt text
|
||||||
|
caption: "<text>" # display caption under cover
|
||||||
|
relative: false # when using page bundles set this to true
|
||||||
|
showtoc: true
|
||||||
|
searchHidden: false
|
||||||
|
---
|
||||||
|
## **Introduction**
|
||||||
|
You need to learn _Linux_ because there is no reason not to. If you
|
||||||
|
are pursuing a career in IT then you will without a doubt come across
|
||||||
|
_Linux_ and having even basic knowledge is very helpful. Many people
|
||||||
|
struggle with the OS simply because it's fundamentally different
|
||||||
|
compared to the other operating systems, but with a bit of time you
|
||||||
|
can master the basics and unlock it's true power.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
## **But Why**
|
||||||
|
**Linux is everywhere**, from data centres to your smart toaster. So
|
||||||
|
if you are interesting in anything IT related then it's a great asset
|
||||||
|
to have.
|
||||||
|
|
||||||
|
Linux is great for power users because it allows you to customise all
|
||||||
|
aspects of your workflow to make it yours. The amount of
|
||||||
|
customisability is mind blowing and an endless rabbit hole which is
|
||||||
|
awesome as there is always something you could implement to improve
|
||||||
|
your workflow.
|
||||||
|
|
||||||
|
Another great aspect of the customisability is the crazy number of
|
||||||
|
options you can choose from to theme and tailor the Linux desktop
|
||||||
|
experience to your liking. For some great and inspiring examples
|
||||||
|
checkout [r/unixporn](https://www.reddit.com/r/unixporn/). This
|
||||||
|
is what drove me to switch to Linux and Arch specifically.
|
||||||
|
|
||||||
|
Linux is very Light weight (Depending on Distribution) and much
|
||||||
|
faster than competing operating systems simply because more often
|
||||||
|
than not the distributions of Linux are not filled with bloatware.
|
||||||
|
The most extreme examples of this are distros like Arch or something
|
||||||
|
like LFS (Linux From Scratch) where you get a completely bare bones
|
||||||
|
installation of Linux and are required to install everything from
|
||||||
|
Network Managers, to the Desktop Environment, although this can seem
|
||||||
|
pointless at the start as you use more and more distros you will find
|
||||||
|
things you like and don't on each and something like Arch allows you
|
||||||
|
to choose every bit of software that is installed and come up with
|
||||||
|
something completely custom. Plus then you can say `I use Arch BTW`
|
||||||
|
|
||||||
|
## **How can you start**
|
||||||
|
|
||||||
|
### **Install Linux as your main OS**
|
||||||
|
This is the full send option.
|
||||||
|
|
||||||
|
A great Distribution that I recommend is [Manjaro with KDE Plasma](https://manjaro.org/downloads/official/kde/)
|
||||||
|
as it offers a heavily customisable desktop environment `KDE Plasma`
|
||||||
|
and Manjaro itself is a great as it's Arch based but does not require
|
||||||
|
you to start from step 0.
|
||||||
|
|
||||||
|
### ***MacOS*** **Terminal**
|
||||||
|
_MacOS_ is actually _UNIX_ based and so **if you have an _apple
|
||||||
|
Mac/MacBook_ all you need is the Terminal** application. I used this on
|
||||||
|
my work machine and it's a great alternative to the full send option.
|
||||||
|
However I do not recommended this if you don't own one of these devices
|
||||||
|
already due to cost 💸
|
||||||
|
|
||||||
|
### ***Windows WSL***
|
||||||
|
The _Windows Subsystem for Linux_ is another great option to get started
|
||||||
|
with _Linux_, it installs the _Linux Kernel_ in windows and allows you
|
||||||
|
to play around in a real _Linux_ environment.
|
||||||
|
|
||||||
|
### **Virtual Machines**
|
||||||
|
If there is a specific Distribution of _Linux_ you want to try then
|
||||||
|
this is a great option. However if you want to simply get to know
|
||||||
|
_Linux_ then choose the _MacOS_ terminal or _WSL_ methods as they are
|
||||||
|
a lot lighter on system resources
|
||||||
|
|
||||||
|
## Conclusion
|
||||||
|
**Why are you still reading go and get stuck in with _Linux_ 💨**
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
As with anything learning _Linux_ is a journey and will take time.
|
||||||
|
Enjoy the experience of learning it and uncovering it's hidden powers
|
||||||
|
because it is well worth it. I have linked some great resources for
|
||||||
|
other great Linux related content that helped me.
|
||||||
|
|
||||||
|
[DT youtube Channel](https://www.youtube.com/channel/UCVls1GmFKf6WlTraIb_IaJg)
|
||||||
|
|
||||||
|
[r/unixporn](https://www.reddit.com/r/unixporn/)
|
||||||
|
|
||||||
|
[Arch Wiki](https://wiki.archlinux.org/) (Although specific to Arch
|
||||||
|
this is a great knowledge base, also useful for Manjaro as it's Arch based)
|
||||||
|
After Width: | Height: | Size: 659 KiB |
|
After Width: | Height: | Size: 110 KiB |
|
After Width: | Height: | Size: 236 KiB |
|
After Width: | Height: | Size: 629 KiB |
|
After Width: | Height: | Size: 1015 KiB |
|
After Width: | Height: | Size: 478 KiB |
|
After Width: | Height: | Size: 777 KiB |
|
After Width: | Height: | Size: 469 KiB |
|
After Width: | Height: | Size: 1.0 MiB |
|
After Width: | Height: | Size: 915 KiB |
|
Before Width: | Height: | Size: 2.1 MiB |
|
Before Width: | Height: | Size: 726 KiB |
|
Before Width: | Height: | Size: 1.8 MiB |
|
Before Width: | Height: | Size: 1.6 MiB |
|
Before Width: | Height: | Size: 13 MiB |
|
Before Width: | Height: | Size: 1.9 MiB |
|
Before Width: | Height: | Size: 1.9 MiB |
|
Before Width: | Height: | Size: 4.1 MiB |
|
After Width: | Height: | Size: 6.8 KiB |