Een van de meest gebruikte protocollen door de eeuwen heen voor alles wat met externe connectiviteit te maken heeft, is SSH, dat zijn oorsprong vindt sinds 1995 en een veilige toegangsmethode biedt vanaf een extern netwerk waar kwetsbaarheden zo vaak voorkomen. Elke dag kunnen we zien hoe nieuwe bedreigingen worden gecreëerd, nieuwe soorten aanvallen en hoewel we geen extreem gevoelige informatie hebben of opslaan, kunnen we het slachtoffer worden van aanvallen zoals die van een paar maanden geleden, WannaCry, waarbij duizenden computers besmet waren en hun informatie "gekaapt" en voor wiens vrijlating geldbedragen nodig waren.
Ongeacht het type gebruikers dat we zijn, moeten we weten dat het SSH-protocol is gemaakt met als doel veilige toegangsrechten te verlenen aan ons macOS Mojave-systeem en zo te garanderen dat alleen de geautoriseerde gebruiker (s) deze toegankelijkheid overal kan hebben.
Via deze tutorial wil Solvetic in detail uitleggen wat het is en hoe je SSH implementeert in macOS Mojave.
Wat is SSHSSH (Secure Shell), is opgericht als een softwarepakket waardoor een veilig beheer van het systeem en bestandsoverdracht via onveilige netwerken zoals onze huidige netwerken is toegestaan, het nut van SSH is zo breed dat het tegenwoordig in meerdere datacenters wordt gebruikt en in duizenden bedrijven wereldwijd.
Het SSH-protocol maakt gebruik van een speciale codering om de verbinding tussen een client en een server te beveiligen, dus alle authenticaties van gebruikers, opdrachten, resultaten en bestandsoverdrachten zijn altijd gecodeerd om al deze elementen te beschermen tegen aanvallen op de netwerk.
Bij het gebruik van SSH zijn er verschillende alternatieve opties om sterke authenticatie te verkrijgen, en er zijn voordelen zoals het verbeteren van de veiligheid en integriteit van communicatie met behulp van sterke codering. SSH wordt gepositioneerd als een veilig alternatief voor onbeveiligde inlogprotocollen zoals telnet of onveilige bestandsoverdrachtsmethoden zoals FTP.
Het SSH-protocol wordt toegepast in bijzondere situaties zoals:
- Zorg voor veilige toegang voor gebruikers en geautomatiseerde processen in bedrijven
- Voer bestandsoverdrachten op een interactieve en geautomatiseerde manier uit
- In staat zijn om opdrachten op afstand uit te voeren
- Beheer de netwerkinfrastructuur en andere bedrijfskritieke systeemcomponenten op een gecentraliseerde manier, waar we ook zijn.
Hoe SSH werktHet is belangrijk om in detail te weten hoe SSH echt werkt, omdat we op deze manier goed kunnen weten wat we installeren en alles wat er intern gebeurt als we verbinding maken via dit protocol. Het SHH-protocol werkt op basis van het client-servermodel, waarmee de verbinding tot stand wordt gebracht door de SSH-client die verbinding maakt met de SSH-server.
Na deze verbinding leidt de SSH-client het verbindingsconfiguratieproces om en maakt gebruik van cryptografie met openbare sleutels om de identiteit van de SSH-server te verifiëren en te controleren of alles binnen de juiste parameters valt, dan is dit het protocol dat SSH verantwoordelijk is voor het nemen van sterke encryptie-algoritmen en symmetrische hashes om de privacy en integriteit te garanderen van de gegevens die tussen de client en de SSH-server worden verzonden.
Als we het hebben over beveiliging, zijn er verschillende opties die we kunnen implementeren voor gebruikersauthenticatie, waarbij wachtwoorden en openbare sleutelauthenticatie het meest worden gebruikt, zodat SSH de authenticatiemethode met openbare sleutels als beveiligingsbasis neemt, die voornamelijk wordt gebruikt voor automatisering. of eenmalige aanmeldingen.
Automatische beveiligde shell (SH) bestandsoverdrachten kunnen worden gebruikt om applicaties te integreren en ook om geautomatiseerd systemen en configuratiebeheer te creëren op een vereenvoudigde maar volledig uitgebreide manier met de beste beveiligingsfuncties.
Zodra er een correcte verbinding tot stand is gebracht tussen de SSH-client en de server, worden de gegevens die via deze kanalen worden verzonden, gecodeerd op basis van de parameters die in de configuratie zijn overeengekomen en tijdens deze onderhandeling komen de client en de server tot overeenstemming over de symmetrische encryptie-algoritme te gebruiken en op basis hiervan zal de te gebruiken encryptiesleutel worden gegenereerd.
Verkeer tussen deze kanalen wordt altijd beschermd met industriestandaard coderingsalgoritmen zoals AES (Advanced Encryption Standard), en het SSH-protocol bevat ook een speciaal mechanisme dat de integriteit van de verzonden gegevens garandeert met behulp van standaard hash-algoritmen zoals de al bekende SHA - 2.
Opvallende kenmerken van SSHAfgezien van de geweldige functies die we over SSH hebben genoemd, zijn enkele van de functies:
- Sterke cryptografie met behulp van algoritmen zoals AES, ChaCha20, RSA, ECDSA, Ed25519 en nog veel meer
- helemaal gratis
- Ondersteunt X11-forwarding die ook X Window System-verkeer versleutelt
- Port forwarding die het doorsturen van TCP / IP-verbindingen naar een externe computer mogelijk maakt via een gecodeerd kanaal. Sterke authenticatie, inclusief openbare sleutels, eenmalige wachtwoorden en meer, die bescherming biedt tegen verschillende beveiligingsfouten, zoals IP- en identiteitsspoofing, DNS-spoofing en meer. SSH ondersteunt verschillende authenticatiemethoden zoals public key authenticatie, eenmalige wachtwoorden met s / key en Kerberos-authenticatie.
- Interoperabiliteit tussen implementaties
- Agent doorsturen, wat handig is voor het gebruik van een authenticatie-agent die op het apparaat van de gebruiker draait om de authenticatiesleutels voor die specifieke gebruiker te bewaren. SSH is verantwoordelijk voor het automatisch doorsturen van de verbinding naar de authenticatie-agent met behulp van elk type verbinding zonder de noodzaak, onveilig, om de sleutels op de lokale computer te hosten
- Volledige SFTP-ondersteuning is beschikbaar, waarbij gebruik wordt gemaakt van het sftp-commando als client en het sftp-server-subsysteem als server.
- Optionele gegevenscompressie die de prestaties van netwerkverbindingen met lage snelheid verbetert.
1. SSH controleren in macOS Mojave
De eerste actie die we moeten ondernemen, is controleren of het SSH-protocol niet is ingeschakeld in macOS Mojave. Om deze controle uit te voeren, moeten we toegang krijgen tot de terminal via een van de volgende methoden:
- Met behulp van de toetsencombinatie ⇧ + ⌘ + U en in het weergegeven venster selecteren we Terminal
- In het pad Go / Utilities / Terminal
- Gebruik Spotlight, voer daar de terminal in en kies het betreffende hulpprogramma.
sudo systemsetup -getremoteloginWe voeren ons wachtwoord in en dit zal het resultaat zijn.
We kunnen zien dat dit protocol standaard is uitgeschakeld. Om het te activeren, gaan we gebruik maken van de parameter -setremotelogin, waardoor het mogelijk zal zijn om externe toegang via SSH naar Mojave te definiëren en in te schakelen, hiervoor voeren we de volgende regel uit:
sudo systemsetup -setremotelogin aanAls zodanig retourneert deze opdracht geen resultaten, dus we voeren sudo systemsetup -getremotelogin opnieuw uit om te verifiëren dat SSH-activering heeft plaatsgevonden. We kunnen zien dat de status nu Aan is.
2. Hoe de gebruiker SSH-toegang tot macOS Mojave te geven
Stap 1
Met SSH ingeschakeld in het systeem, is de volgende stap die u moet nemen om toegang te verlenen aan gebruikers die inloggegevens op de computer hebben, hiervoor zullen we de syntaxis met elk van hen gebruiken:
ssh gebruikersnaam @ host_ipWe moeten de naam van de gebruikers in detail kennen om te authenticeren en om het IP-adres van de apparatuur te verkrijgen, zullen we een van de volgende opties gebruiken:
Vanaf de terminal door de opdracht ifconfig uit te voeren:
Stap 2
Vanuit systeem-/netwerkvoorkeuren:
VERGROTEN
Stap 3
Nu we het IP-adres kennen, zullen we de gewenste gebruiker, in dit geval de solvent-gebruiker, in staat stellen het volgende in te voeren:
ssh [email protected]Zodra we dit proces hebben uitgevoerd, heeft de gebruiker toegang tot de apparatuur en in het geval dat hij een beheerder is, moet hij de respectieve toegangsreferenties hiervoor verstrekken:
Zoals we kunnen zien, moeten we ja invoeren wanneer wordt gevraagd of we de verbinding tot stand willen brengen.
Op deze manier heeft de gebruiker via SSH toegang tot macOS Mojave.
3. Extern toegang krijgen tot macOS Mojave
Stap 1
De volgende stap die moet worden genomen is om te valideren dat de externe verbinding met macOS Mojave werkt zoals verwacht, hiervoor gebruiken we een SSH-client genaamd Putty die beschikbaar is via de volgende link:
Nadat we het hebben uitgevoerd, moeten we het volgende configureren:
- In het veld Hostnaam (of IP-adres) definiëren we het IP-adres van het macOS Mojave-apparaat
- Het standaard poortveld is 22, het blijft zoals het is
- Het verbindingstype in het veld Verbindingstype moet SSH . zijn
Stap 2
Klik op de knop Open en de volgende beveiligingswaarschuwing wordt weergegeven:
Stap 3
Daar, zoals we kunnen zien, wordt de sleutel die is toegewezen voor de verbinding weergegeven, klik op de knop Ja en nu zullen we de inloggegevens van de geselecteerde gebruiker invoeren:
OpmerkingIn dit geval maken we verbinding vanaf Windows 10.
Stap 4
Bij toegang via SSH via Putty kunnen we bibliotheken weergeven:
Stap 5
Het is ook mogelijk om toegang te krijgen tot inhoud binnen macOS Mojave:
4. SSH uitschakelen in macOS Mojave
Op het moment dat we bedenken dat het niet meer nodig is om SSH te gebruiken voor verbindingen in Mojave, kunnen we overgaan tot het uitschakelen hiervan, hiervoor voeren we het volgende uit in de terminal:
sudo systemsetup -setremotelogin uit
We komen binnen En het is om het uitschakelen van SSH te bevestigen. Zo stelt SSH, zowel lokaal als op afstand, ons in staat om toegang te krijgen tot de apparatuur en ondersteunende of administratieve taken uit te voeren alsof we daar aanwezig zijn:
Op deze manier weet je hoe je SSH kunt activeren en gebruiken in macOS Mojave.