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 klikkenHieronder 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 verwijderenX11Forwarding 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 limieteniptables -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