Initiële veilige serverconfiguratie van Ubuntu 18.04

Invoering

In deze zelfstudie leert u hoe u een basisbeveiligingsniveau configureert op een gloednieuwe Vultr VC2 virtuele machine met Ubuntu 18.04.

Vereisten

  • Een Vultr account hebt, kunt u er een maken hier
  • Een nieuwe Ubuntu 18.04 Vultr VM

Maak en wijzig een gebruiker

Het eerste dat we gaan doen, is onze nieuwe gebruiker maken die we zullen gebruiken om in te loggen op de VM:

adduser porthorian

Opmerking: het wordt aanbevolen om een ​​unieke gebruikersnaam te gebruiken die moeilijk te raden is. De meeste bots in gebreke zal blijven om te proberen root, admin, moderator, en dergelijke.

U wordt hier om een ​​wachtwoord gevraagd. Het wordt sterk aanbevolen om een ​​sterk alfanumeriek wachtwoord te gebruiken. Daarna volgt u de aanwijzingen op uw scherm en wanneer u wordt gevraagd of de informatie juist is, drukt u gewoon op Y.

Zodra die nieuwe gebruiker is toegevoegd, moeten we die gebruiker sudo-machtigingen geven, zodat we namens de rootgebruiker opdrachten van de gebruiker kunnen uitvoeren:

usermod -aG sudo porthorian

Nadat u uw gebruiker sudo-machtigingen heeft gegeven, schakelt u over naar uw nieuwe gebruiker:

su - porthorian

Genereer en configureer een SSH-sleutel

Volg dit document om de SSH-sleutel te genereren .

Zodra u uw nieuwe SSH-sleutel heeft gegenereerd, kopieert u uw openbare sleutel. Het zou er als volgt uit moeten zien:

ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAQEAmB3uRWxAAELNJ8oGBCBmZx7S11vnAp0RG8rdKf6CLdvT7NMbKF55F8Wf0hFPewEryplaH54ibdmaTuheJVKy1lUhHnVi0AcBpkhJiiOQdEtvbYKT/eIkQl/Qm92Gz6aL3lJ0UknO4gO0LzgqI2vYX0b9LHMF+ZvApEDahLCna6RKo3/lffnANUKfExE+dVwOcJwATL3Ld5IkSatm7zBqbJAim0wj/JQ5ejzkL+aYd3YawpW3qf+WsY3HGbK2TIJt3LsiZJ3M7giZo/fVIZCJqsIOyO9NUOEx5/+KE8IniGb7gdRYgquAEJr89poDCNz/8CBODi9z3ukiE1+UnVlhfQ== rsa-key-20190408

Configureer uw gebruikersmap

Navigeer naar de homedirectory van uw gebruikers als u er nog niet in zit:

cd $HOME

$HOMEis de omgevingsvariabele voor de homedirectory van uw gebruikers. Dit wordt automatisch ingesteld wanneer de nieuwe gebruiker wordt aangemaakt.

In onze homedirectory gaan we een andere directory erin plaatsen. Deze directory wordt verborgen voor andere gebruikers op de computer, behalve root en de gebruiker die eigenaar is van de directory. Maak de nieuwe map en beperk de rechten met de volgende opdrachten:

mkdir ~/.ssh
chmod 700 ~/.ssh

Nu gaan we een bestand openen in .sshgenaamd authorized_keys. Dit is het universele bestand waarnaar OpenSSH op zoek is. U kunt de naam hiervan wijzigen in de OpenSSH-configuratie /etc/ssh/sshd_config, indien nodig.

Gebruik je favoriete editor om het bestand te maken. Deze tutorial gebruikt nano:

nano ~/.ssh/authorized_keys

Kopieer en plak uw ssh-sleutel in het authorized_keysbestand dat we hebben geopend. Zodra de openbare sleutel binnen is, kunt u het bestand opslaan door op CTRL+ te drukken O.

Zorg ervoor dat het juiste bestandspad verschijnt:

/home/porthorian/.ssh/authorized_keys

Als het het juiste bestandspad is, drukt u gewoon op ENTER, anders brengt u de nodige wijzigingen aan om overeen te komen met het bovenstaande voorbeeld. Sluit het bestand vervolgens af met CTRL+ X.

Nu gaan we de toegang tot het bestand beperken:

chmod 600 ~/.ssh/authorized_keys

Sluit onze gemaakte gebruiker af en ga terug naar de rootgebruiker:

exit

Wachtwoordverificatie uitschakelen

We kunnen nu wachtwoordverificatie naar de server uitschakelen, op die manier heeft inloggen een ssh-sleutel nodig. Het is belangrijk op te merken dat als u wachtwoordverificatie uitschakelt en de openbare sleutel niet correct is geïnstalleerd, u uzelf van uw server kunt uitsluiten. Het wordt aanbevolen dat u de sleutel eerst test voordat u zich zelfs afmeldt bij uw rootgebruiker.

We zijn momenteel ingelogd op onze root-gebruiker, dus we gaan de sshd_config:

nano /etc/ssh/sshd_config

We gaan op zoek naar 3 waarden om er zeker van te zijn dat OpenSSH correct is geconfigureerd.

  • PasswordAuthentication
  • PubkeyAuthentication
  • ChallengeResponseAuthentication

We kunnen deze waarden vinden door op CTRL+ te drukken W.

De waarden moeten als volgt worden ingesteld:

PasswordAuthentication  no
ChallengeResponseAuthentication  no
PubkeyAuthentication  yes

Als de waarden zijn gemarkeerd, verwijder dan de #aan het begin van de regel en zorg ervoor dat de waarden van die variabelen zijn zoals hierboven weergegeven. Zodra u deze variabelen zijn veranderd, op te slaan en uw redacteur, met CTRL+ O, ENTERen ten slotte CTRL+ X.

Nu gaan we herladen sshdmet de volgende opdracht:

systemctl reload sshd

Nu kunnen we de login testen. Zorg ervoor dat je je nog niet hebt afgemeld bij je root-sessie en open een nieuw ssh-venster en maak verbinding met je ssh-sleutel die aan de verbinding is gekoppeld.

In PuTTY staat dit onder Connection-> SSH-> Auth.

Blader om uw privésleutel voor verificatie te vinden, zoals u deze had moeten opslaan bij het maken van de ssh-sleutel.

Maak verbinding met uw server met de privésleutel als authenticatie. U wordt nu aangemeld bij uw Vultr VC2 virtuele machine.

Opmerking: als u een wachtwoordzin hebt toegevoegd tijdens het genereren van de ssh-sleutel, wordt u om een ​​wachtwoord gevraagd. Dit is totaal anders dan het wachtwoord van uw daadwerkelijke gebruiker op de virtuele machine.

Stel een eenvoudige firewall in

Configureer UFW

Eerst beginnen we met het installeren van UFW als dit nog niet op de virtuele machine staat. Een goede manier om te controleren is met de volgende opdracht:

sudo ufw status

Als UFW is geïnstalleerd, wordt deze uitgevoerd Status:inactive. Als het niet is geïnstalleerd, wordt u geïnstrueerd om dit te doen.

We kunnen het installeren met deze opdracht:

sudo apt-get install ufw -y

Nu gaan we de SSH-poort 22in onze firewall toestaan :

sudo ufw allow 22

Als alternatief kunt u OpenSSH toestaan:

sudo ufw allow OpenSSH

Een van de bovenstaande opdrachten werkt.

Nu we de poort via onze firewall hebben toegestaan, kunnen we UFW inschakelen:

sudo ufw enable

U wordt gevraagd of u zeker weet dat u deze bewerking wilt uitvoeren. Door te typen ygevolgd door ENTERwordt de firewall ingeschakeld:

porthorian@MEANStack:~$ sudo ufw enable
Command may disrupt existing ssh connections. Proceed with operation? y

Opmerking: als je OpenSSH of poort 22 niet hebt toegestaan, sluit je jezelf af van je virtuele machine. Zorg ervoor dat een van deze is toegestaan ​​voordat UFW wordt ingeschakeld.

Zodra de firewall is ingeschakeld, blijft u verbonden met uw instantie. We gaan onze firewall nu dubbel controleren met dezelfde opdracht als voorheen:

sudo ufw status

U ziet iets dat lijkt op de volgende uitvoer:

porthorian@MEANStack:~$ sudo ufw status
Status: active

To                         Action      From
--                         ------      ----
22                         ALLOW       Anywhere
22 (v6)                    ALLOW       Anywhere (v6)

De Vultr-firewall configureren

Om onze server verder te beveiligen gaan we onze Vultr Firewall gebruiken. Log in op uw account . Eenmaal ingelogd, navigeert u naar het firewall-tabblad bovenaan uw scherm:

Initiële veilige serverconfiguratie van Ubuntu 18.04

Nu gaan we een nieuwe firewallgroep toevoegen. Hierdoor kunnen we specificeren welke poorten zelfs onze UFW-firewall kunnen bereiken, wat ons een dubbele beveiligingslaag biedt:

Initiële veilige serverconfiguratie van Ubuntu 18.04

Vultr zal u nu vragen hoe u uw firewall gaat noemen met behulp van het veld "Beschrijving". Zorg ervoor dat u beschrijft wat de servers onder deze firewallgroep zullen doen, voor eenvoudiger toekomstig beheer. Omwille van deze tutorial gaan we het een naam geven test. U kunt de beschrijving later altijd wijzigen als u dat wilt.

Eerst moeten we ons IP-adres krijgen. De reden dat we dit direct doen, is dat als uw IP-adres niet statisch is en voortdurend verandert, u eenvoudig kunt inloggen op uw Vultr-account en het IP-adres kunt wijzigen.

Dat is ook de reden waarom we het IP-adres niet nodig hadden op de UFW-firewall. Bovendien beperkt het het gebruik van de firewall van uw virtuele machine om alle andere poorten uit te filteren en laat het de Vultr-firewall het gewoon afhandelen. Dit beperkt de belasting van de algehele verkeersfiltering op uw instantie.

Gebruik het netwerkkijkglas van Vultr om uw IP-adres te vinden.

Dus nu we ons IP-adres hebben, gaan we een IPV4-regel toevoegen aan onze nieuw gemaakte firewall:

Initiële veilige serverconfiguratie van Ubuntu 18.04

Zodra u het IP-adres heeft ingevoerd, klikt u op het +symbool om uw IP-adres toe te voegen aan de firewall.

Uw firewallgroep ziet er als volgt uit:

Initiële veilige serverconfiguratie van Ubuntu 18.04

Nu we ons IP-adres correct hebben ingebonden in de Firewall-groep, moeten we onze Vultr-instantie koppelen. Aan de linkerkant ziet u een tabblad met de tekst "Gekoppelde instanties":

Initiële veilige serverconfiguratie van Ubuntu 18.04

Eenmaal op de pagina ziet u een vervolgkeuzelijst met een lijst van uw serverinstanties:

Initiële veilige serverconfiguratie van Ubuntu 18.04

Klik op de vervolgkeuzelijst en selecteer uw instantie. Klik vervolgens op het +symbool wanneer u klaar bent om de instantie aan de firewallgroep toe te voegen .

Gefeliciteerd, je hebt je Vultr VC2 Virtual Machine succesvol beveiligd. Dit geeft u een goede basis voor een zeer eenvoudige beveiligingslaag zonder dat u zich zorgen hoeft te maken dat iemand uw instantie bruut probeert te forceren.



Leave a Comment

Hoe LiteCart Shopping Cart Platform op Ubuntu 16.04 te installeren

Hoe LiteCart Shopping Cart Platform op Ubuntu 16.04 te installeren

LiteCart is een gratis en open source winkelwagenplatform geschreven in PHP, jQuery en HTML 5. Het is een eenvoudige, lichtgewicht en gebruiksvriendelijke e-commerce software

Stel NFS Share op Debian in

Stel NFS Share op Debian in

NFS is een netwerkgebaseerd bestandssysteem waarmee computers toegang hebben tot bestanden via een computernetwerk. Deze gids legt uit hoe u mappen via NF kunt weergeven

Hoe Matomo Analytics op Fedora te installeren 28

Hoe Matomo Analytics op Fedora te installeren 28

Gebruikt u een ander systeem? Matomo (voorheen Piwik) is een open source analyseplatform, een open alternatief voor Google Analytics. Matomo source wordt gehost o

McMyAdmin installeren op Ubuntu 14.10

McMyAdmin installeren op Ubuntu 14.10

McMyAdmin is een Minecraft-serverbedieningspaneel dat wordt gebruikt om uw server te beheren. Hoewel McMyAdmin gratis is, zijn er meerdere edities, waarvan sommige pai zijn

Stel een TeamTalk-server in op Linux

Stel een TeamTalk-server in op Linux

TeamTalk is een conferentiesysteem waarmee gebruikers hoogwaardige audio- / videogesprekken kunnen voeren, tekstchatten, bestanden kunnen overdragen en schermen kunnen delen. Het ik

CyberPanel installeren en configureren op uw CentOS 7-server

CyberPanel installeren en configureren op uw CentOS 7-server

Gebruikt u een ander systeem? Introductie CyberPanel is een van de eerste bedieningspanelen op de markt die zowel open source is als OpenLiteSpeed ​​gebruikt. Wat thi

Ruby installeren en configureren met Rbenv, Rails, MariaDB, Nginx, SSL en Passenger op Ubuntu 17.04

Ruby installeren en configureren met Rbenv, Rails, MariaDB, Nginx, SSL en Passenger op Ubuntu 17.04

Ruby on Rails is een populair webraamwerk voor Ruby dat is ontwikkeld om de productiviteit van programmeurs te verhogen. Het verkrijgen van verschillende edelstenen en afhankelijkheden t

Sensu Monitoring installeren en configureren op CentOS 7

Sensu Monitoring installeren en configureren op CentOS 7

Introductie Sensu is een gratis en open source monitoringoplossing die kan worden gebruikt om server, applicatie en verschillende systeemservices te monitoren. Sensu i

Installeer phpBB With Apache op Ubuntu 16.04

Installeer phpBB With Apache op Ubuntu 16.04

PhpBB is een open source prikbordprogramma. Dit artikel laat zien hoe je phpBB bovenop een Apache-webserver op Ubuntu 16.04 installeert. Het was geschreven

Stel een niet-rootgebruiker in met Sudo Access op Ubuntu

Stel een niet-rootgebruiker in met Sudo Access op Ubuntu

Slechts één gebruiker, root, kan gevaarlijk zijn. Dus laten we dat oplossen. Vultr geeft ons de vrijheid om te doen wat we willen met onze gebruikers en onze servers

Toegang krijgen tot uw Vultr VPS

Toegang krijgen tot uw Vultr VPS

Vultr biedt verschillende manieren om toegang te krijgen tot je VPS om te configureren, installeren en gebruiken. Toegangsgegevens De standaard toegangsgegevens voor uw VPS-ar

Fuel CMS installeren op Ubuntu 16.04 LTS

Fuel CMS installeren op Ubuntu 16.04 LTS

Gebruikt u een ander systeem? Fuel CMS is een op CodeIgniter gebaseerd contentmanagementsysteem. De broncode wordt gehost op GitHub. Deze gids laat zien hoe t

Remote Servers bewaken met Zabbix op Ubuntu 16.04

Remote Servers bewaken met Zabbix op Ubuntu 16.04

Gebruikt u een ander systeem? Zabbix is ​​een gratis en open source enterprise-ready software die wordt gebruikt om de beschikbaarheid van systemen en netwerkcomponenten te bewaken

Couch CMS 2.0 installeren op een Debian 9 LAMP VPS

Couch CMS 2.0 installeren op een Debian 9 LAMP VPS

Gebruikt u een ander systeem? Couch CMS is een eenvoudig en flexibel, gratis en open source Content Management Systeem (CMS) waarmee webdesigners kunnen ontwerpen

Golang 1.8.3 installeren op CentOS 7, Ubuntu 16.04 en Debian 9

Golang 1.8.3 installeren op CentOS 7, Ubuntu 16.04 en Debian 9

Golang is een door Google ontwikkelde programmeertaal. Dankzij zijn veelzijdigheid, eenvoud en betrouwbaarheid is Golang uitgegroeid tot een van de meest bevolkte

Quassel instellen op Debian 9

Quassel instellen op Debian 9

IRC is populair bij ontwikkelaars en gebruikers van open source software. Een van de nadelen van IRC is dat wanneer u niet online bent, u importan kunt missen

Sudo gebruiken op Debian, CentOS en FreeBSD

Sudo gebruiken op Debian, CentOS en FreeBSD

Het gebruik van een sudo-gebruiker om toegang te krijgen tot een server en opdrachten uit te voeren op rootniveau is een veel voorkomende praktijk onder Linux en Unix-systeembeheerder. Het gebruik van een sud

Hoe DokuWiki op Ubuntu 16.04 LTS te installeren

Hoe DokuWiki op Ubuntu 16.04 LTS te installeren

Gebruikt u een ander systeem? DokuWiki is een open source wiki-programma geschreven in PHP waarvoor geen database nodig is. Het slaat gegevens op in tekstbestanden. DokuWik

Een Chroot opzetten op Debian

Een Chroot opzetten op Debian

Dit artikel leert u hoe u een chroot-gevangenis op Debian instelt. Ik neem aan dat u Debian 7.x gebruikt. Als u Debian 6 of 8 gebruikt, kan dit werken, bu

Kan AI vechten met toenemend aantal ransomware-aanvallen?

Kan AI vechten met toenemend aantal ransomware-aanvallen?

Ransomware-aanvallen nemen toe, maar kan AI helpen het nieuwste computervirus het hoofd te bieden? Is AI het antwoord? Lees hier weten is AI boezem of vloek

ReactOS: is dit de toekomst van Windows?

ReactOS: is dit de toekomst van Windows?

ReactOS, een open source en gratis besturingssysteem is hier met de nieuwste versie. Kan het voldoen aan de behoeften van moderne Windows-gebruikers en Microsoft uitschakelen? Laten we meer te weten komen over deze oude stijl, maar een nieuwere OS-ervaring.

Blijf verbonden via WhatsApp Desktop-app 24 * 7

Blijf verbonden via WhatsApp Desktop-app 24 * 7

WhatsApp heeft eindelijk de Desktop-app voor Mac- en Windows-gebruikers gelanceerd. Nu heb je eenvoudig toegang tot WhatsApp vanuit Windows of Mac. Beschikbaar voor Windows 8+ en Mac OS 10.9+

Hoe AI procesautomatisering naar een hoger niveau kan tillen?

Hoe AI procesautomatisering naar een hoger niveau kan tillen?

Lees dit om te weten hoe kunstmatige intelligentie populair wordt onder de kleinschalige bedrijven en hoe het de kansen vergroot om ze te laten groeien en hun concurrenten voorsprong te geven.

macOS Catalina 10.15.4 Supplement Update veroorzaakt meer problemen dan het oplost

macOS Catalina 10.15.4 Supplement Update veroorzaakt meer problemen dan het oplost

Onlangs heeft Apple macOS Catalina 10.15.4 uitgebracht, een aanvullende update om problemen op te lossen, maar het lijkt erop dat de update meer problemen veroorzaakt die ertoe leiden dat mac-machines worden gemetseld. Lees dit artikel voor meer informatie

13 Commerciële data-extractietools voor big data

13 Commerciële data-extractietools voor big data

13 Commerciële data-extractietools voor big data

Wat is een logboekbestandssysteem en hoe werkt het?

Wat is een logboekbestandssysteem en hoe werkt het?

Onze computer slaat alle gegevens op een georganiseerde manier op, het zogenaamde Journaling-bestandssysteem. Het is een efficiënte methode waarmee de computer bestanden kan zoeken en weergeven zodra u op zoeken drukt.https://wethegeek.com/?p=94116&preview=true

Technologische singulariteit: een verre toekomst van de menselijke beschaving?

Technologische singulariteit: een verre toekomst van de menselijke beschaving?

Naarmate de wetenschap zich snel ontwikkelt en veel van onze inspanningen overneemt, nemen ook de risico's toe om onszelf te onderwerpen aan een onverklaarbare singulariteit. Lees, wat singulariteit voor ons kan betekenen.

Een inzicht in 26 Big Data-analysetechnieken: deel 1

Een inzicht in 26 Big Data-analysetechnieken: deel 1

Een inzicht in 26 Big Data-analysetechnieken: deel 1

De impact van kunstmatige intelligentie in de gezondheidszorg 2021

De impact van kunstmatige intelligentie in de gezondheidszorg 2021

AI in de zorg heeft de afgelopen decennia grote sprongen gemaakt. De toekomst van AI in de gezondheidszorg groeit dus nog steeds met de dag.