Uw gids voor het gebruik van SSH

SSH is een netwerkprotocol dat werkt in een console. De meest gebruikte SSH-client is PuTTy. De onderstaande afbeelding toont een bestaande SSH-sessie. Het is gemakkelijk te gebruiken en snel. De meeste IT-professionals beheren het volledige netwerk uitsluitend via SSH vanwege de beveiliging en de snelle / eenvoudige toegang om beheer- en beheertaken op de server uit te voeren. De volledige sessie in SSH is gecodeerd - De belangrijkste protocollen voor SSH zijn SSH1 / SSH-1 en SSH2 / SSH-2. SSH-2 is de laatste, veiliger dan SSH-1. Een Linux OS heeft een ingebouwd hulpprogramma genaamd Terminal voor toegang tot console en een Windows-machine vereist een SSH-client (bijvoorbeeld PuTTy).

Toegang krijgen tot een Remote Host met behulp van SSH

Om toegang te krijgen tot een externe host / computer met behulp van SSH, moet u het volgende hebben:

a) PuTTy (gratis SSH-client)
b) SSH-server gebruikersnaam
c) Wachtwoord SSH-server
d) SSH-poort die gewoonlijk 22 is maar sinds 22 standaard is, moet deze worden gewijzigd naar een andere poort om aanvallen op deze poort te voorkomen.

In een Linux Machine is de root gebruikersnaam standaard de beheerder en bevat alle beheerdersrechten.

In Terminal start de volgende opdracht een verbinding met de server.

ssh [email protected]
waarbij root de gebruikersnaam is en 192.168.1.1 het hostadres

Dit is hoe de terminal eruit ziet:

Uw commando's worden getypt na het $ -symbool . Gebruik de syntaxis voor hulp bij elk commando in terminal / putty:

man ssh
man commando

man, gevolgd door een commando zal terugkeren op het scherm opdrachtbegeleiding

Dus wat ik nu ga doen, is SSH die PuTTy gebruikt in mijn Debian OS dat op VMWare draait.

Maar voordat ik dat doe, moet ik SSH inschakelen door in te loggen op mijn mijn VM Debian - Als u zojuist een server bij een hostingbedrijf hebt gekocht, dan kunt u hen vragen om SSH voor u in te schakelen.

Om ssh te activeren, gebruik
sudo /etc/init.d/ssh opnieuw opstarten

Omdat ik Ubuntu gebruik en ssh niet is geïnstalleerd, dus
Om ssh te installeren, gebruikt u deze opdrachten
sudo apt-get install openssh-client
sudo apt-get install openssh-server

En, hier is wat ik heb, ingelogd bij SSH via PuTTy:

Nu is dit wat er nodig is om SSH op te zetten en een sessie tot stand te brengen via PuTTy - Hieronder zal ik een aantal elementaire geavanceerde functies bespreken die je langzaam een ​​beter beeld van het hele scenario zullen geven.

Het standaard ssh-configuratiebestand bevindt zich op: / etc / ssh / sshd_config
Gebruik het bestand cat / etc / ssh / sshd_config om het configuratiebestand te bekijken
Als u het configuratiebestand wilt bewerken, gebruikt u: vi / etc / ssh / sshd_config of nano / etc / ssh / sshd_config

Na het bewerken van een bestand, gebruik CTRL + X en druk op de Y-toets om op te slaan en het te verlaten (nano-editor)

De SSH-poort kan worden gewijzigd vanuit het configuratiebestand, standaardpoort is 22. De basisopdrachten, cat, vi en nano zullen ook voor andere dingen werken. Gebruik Google Zoeken voor meer informatie over specifieke opdrachten .

Als u wijzigingen in een configuratiebestand aanbrengt, is opnieuw opstarten vereist voor die service. Als we verder gaan, laten we aannemen dat we nu onze poort willen veranderen, dus wat we gaan doen is het sshd_config bestand bewerken, en ik zou het gebruiken

nano / etc / ssh / sshd_config

U moet zijn aangemeld als beheerder of sudo nano / etc / ssh / sshd_config gebruiken om het bestand te bewerken. Nadat het is bewerkt, herstart de ssh-service, sudo /etc/init.d/ssh restart

Als u een poort wijzigt, moet u deze toestaan ​​in uw IPTABLES als u de standaardfirewall gebruikt.

iptables -I INPUT -p tcp -dport 5000 -j ACCEPT
/etc/rc.d/init.d/iptables opslaan

Vraag de iptables om te bevestigen of de poort open is
iptables -nL | grep 5000

Er zijn verschillende richtlijnen in het configuratiebestand, zoals eerder besproken, er zijn twee protocollen voor SSH (1 & 2). Als deze is ingesteld op 1, wijzigt u deze in 2.

PRO TIP: Als het probleem zich voordoet met uw computer of een laptop / notebook, kunt u proberen de Reimage Plus-software te gebruiken die de opslagplaatsen kan scannen en corrupte en ontbrekende bestanden kan vervangen. Dit werkt in de meeste gevallen, waar het probleem is ontstaan ​​door een systeembeschadiging. U kunt Reimage Plus downloaden door hier te klikken

Hieronder is een beetje van mijn configuratiebestand:

# Door pakket gegenereerd configuratiebestand
# Zie de sshd_config (5) manpage voor details

# Welke poorten, IP's en protocollen we luisteren
Poort 5000 heeft nummer 22 vervangen door poort
# Gebruik deze opties om te beperken aan welke interfaces / protocollen sshd zal binden
#ListenAddress ::
#ListenAddress 0.0.0.0
Protocol 2 verving protocol 1 door 2

vergeet niet om de service opnieuw te starten na het aanbrengen van wijzigingen

Root is de beheerder, en het wordt aanbevolen dat deze moet worden uitgeschakeld, anders als je openstaat voor externe verbindingen, kun je een onderwerp worden van een brute force-aanval of andere ssh-kwetsbaarheden - Linux-servers zijn de meest geliefde vakken van hackers, de richtlijn LoginGraceTime, stelt een tijdslimiet in voor de gebruiker om in te loggen en te authenticeren, als de gebruiker dat niet doet, dan sluit de verbinding - laat dat standaard.

# Authenticatie:
LoginGraceTime 120
PermitRootLogin nr
StrictModes ja

Een super coole functie, is de Key-verificatie (PubkeyAuthentication) - Met deze functie kunt u alleen op sleutels gebaseerde verificatie instellen, zoals we zien met Amazon EC3-servers. U hebt alleen toegang tot de server met uw persoonlijke sleutel, deze is zeer veilig. Om dit te laten werken, zou u een sleutelpaar moeten genereren en die persoonlijke sleutel aan uw externe machine moeten toevoegen, en de openbare sleutel aan de server moeten toevoegen, zodat deze met die sleutel kan worden geopend.

PubkeyAuthenticatie Ja
AuthorizedKeysFile .ssh / authorized_keys
RSAA-verificatie Ja
WachtwoordAuthenticatie Nr

Hiermee wordt elk wachtwoord geweigerd en kunnen gebruikers alleen met een sleutel toegang krijgen.

In een professioneel netwerk, zou u uw gebruikers gewoonlijk informeren wat zij mogen doen en wat niet, en alle andere noodzakelijke informatie

Het configuratiebestand dat moet worden bewerkt voor banners is: / etc / motd
Om het bestand in de editor te openen, typt u: nano / etc / motd of sudo / etc / motd

Bewerk het bestand, net zoals je zou doen in Kladblok.

U kunt de banner ook in een bestand plaatsen en ernaar verwijzen in de / etc / motd

bijv .: nano banner.txt maakt een banner.txt-bestand en opent onmiddellijk de editor.

Bewerk de banner en ctrl + x / y om hem op te slaan. Refereer dan in het motd-bestand met

Banner /home/users/appualscom/banner.txt OF wat dan ook, het bestandspad is.

Net als de banner, kunt u ook een bericht toevoegen vóór de login prompt, het te bewerken bestand is / etc / issue

SSH-tunneling

Met SSH-tunneling kunt u het verkeer van uw lokale machine naar een externe machine tunnelen. Het is gemaakt door middel van SSH-protocollen en is gecodeerd. Bekijk het artikel over SSH-tunneling

Grafische sessie over SSH-tunnel

Schakel de grafische / gui-sessie in door de volgende regel te verwijderen
X11Forwarding ja

Aan het eind van de client zou het commando zijn:
ssh -X [email protected]

U kunt programma zoals firefox uitvoeren, enz. Met behulp van eenvoudige commando's:
firefox

Als u een weergavefout krijgt, stel dan het adres in:
exporteren DISPLAY = IP-adres van machine: 0.0

TCP-wrappers

Als u geselecteerde hosts wilt toestaan ​​en sommige wilt weigeren, zijn dit de bestanden die u moet bewerken

1. /etc/hosts.allow
2. /etc/hosts.deny

Om een ​​paar hosts toe te staan

sshd: 10.10.10.111

Als u wilt voorkomen dat iedereen uw server kan bereiken, voegt u de volgende regel toe in /etc/hosts.deny
sshd: ALL

SCP - veilige kopie

SCP - beveiligde kopie is een hulpprogramma voor bestandsoverdracht. U moet de volgende opdracht gebruiken om bestanden over ssh te kopiëren / overbrengen.

onderstaande opdracht kopieert mijn bestand naar / home / user2 op 10.10.10.111
scp / home / user / mijnbestand [email protected]: / home / user2
SCP-bestemmingssyntaxis

Om een ​​map te kopiëren
scp -r / home / user / myfolder [email protected]: / home / user2

Zoeken naar bestanden op een externe machine

Het is heel eenvoudig om naar bestanden op een externe machine te zoeken en de uitvoer op uw systeem te bekijken. Bestanden op een externe computer zoeken

ssh [email protected] find / home / user-name '* .jpg'

De opdracht zoekt in / home / gebruikersdirectory voor alle * .jpg-bestanden, je kunt ermee spelen. find / -name zal de gehele / root-directory doorzoeken.

SSH Aanvullende beveiliging

Met iptables kunt u op tijd gebaseerde beperkingen instellen. De onderstaande opdrachten blokkeren de gebruiker 120 seconden als ze niet worden geverifieerd. U kunt de parameter / second / hour / minute of / day in de opdracht gebruiken om de periode op te geven ..

Op tijd gebaseerde limieten
iptables -A INPUT -p tcp -m state -syn -state NEW -dport 22 -m limiet -limiet 120 / second -limit-burst 1 -j ACCEPT

iptables -A INPUT -p tcp -m state -syn -state NEW -dport 5000 -j DROP

5000 is de poort, wijzig deze volgens uw instellingen .

Verificatie van een specifiek IP toestaan
iptables -A INPUT -p tcp -m state -state NEW-source 10.10.10.111 -dport 22 -j ACCEPT

Andere nuttige opdrachten

Bevestig een scherm boven SSH
ssh -t [email protected] scherm -r
SSH Doorvoersnelheidscheck
ja | pv | ssh $ [email protected] cat> / dev / null

PRO TIP: Als het probleem zich voordoet met uw computer of een laptop / notebook, kunt u proberen de Reimage Plus-software te gebruiken die de opslagplaatsen kan scannen en corrupte en ontbrekende bestanden kan vervangen. Dit werkt in de meeste gevallen, waar het probleem is ontstaan ​​door een systeembeschadiging. U kunt Reimage Plus downloaden door hier te klikken

Facebook Twitter Google Plus Pinterest