ÅbnSSH

Den aktuelle version af siden er endnu ikke blevet gennemgået af erfarne bidragydere og kan afvige væsentligt fra den version , der blev gennemgået den 17. oktober 2019; checks kræver 9 redigeringer .
ÅbnSSH
Type dæmon og klient
Udvikler OpenBSD-projekt [d]
Skrevet i C [2]
Operativ system Linux , macOS , FreeBSD , OpenBSD osv. UNIX-lignende ,
Første udgave 1. december 1999
nyeste version
Licens ISC licens
Internet side openssh.com
 Mediefiler på Wikimedia Commons

OpenSSH ( Eng.  Open Security Shell - open secure shell ) - et sæt programmer, der giver kryptering af kommunikationssessioner over computernetværk ved hjælp af SSH-protokollen . Det blev skabt under ledelse af Theo de Raadt som et open source-alternativ til proprietær software fra SSH Communications Security .

Historie

OpenSSH blev skabt af OpenBSD -teamet som et alternativ til SSH, som stadig er proprietær software. Udviklerne af OpenSSH hævder, at det er mere sikkert end den originale Secure Shell på grund af deres oprydnings- og koderevisionspolitikker . Selvom kildekoden også var tilgængelig for den originale SSH i lang tid [3] , gjorde begrænsningerne af dens licens oprindeligt OpenSSH til et mere attraktivt projekt for de fleste programmører.

OpenSSH dukkede først op i OpenBSD 2.6.

Udgivet den 6. september 2011 introducerede version 5.9 en eksperimentel " sandbox "-tilstand med begrænsninger for visse systemopkald . Formålet med dette er at forhindre angreb på andre noder på netværket, for eksempel ved at køre en proxy eller åbne sockets .

Varemærker

I februar 2001 rapporterede Tatu Ylönen ( Fin. Tatu Ylönen ), formand og CTO for SSH Communications Security, via OpenSSH-mailinglisten, at virksomheden efter at have talt med de ledende udviklere af OpenSSH havde godkendt ejerskabet af "SSH" og "Secure". Shell" varemærker. . Han ledte også efter måder at ændre navnet på protokollen til SecSH eller secsh og foreslog at ændre navnet på OpenSSH for at undgå retssager.

Samtidig blev "SSH", "Secure Shell" og "ssh" brugt i dokumenter, der definerede protokollen som en åben standard, og der blev udført meget arbejde uden varemærke. Der er blevet rejst tvivl om rigtigheden af ​​påstandene, da det er 6 år siden virksomhedens start og det tidspunkt, hvor det begyndte at forsvare varemærket mod gratis alternativer som OpenSSH, og at kun OpenSSH var udsat for deres juridiske angreb.

Både udviklerne af OpenSSH og Ylönen var medlemmer af IETF 's nye standardarbejdsgruppe, som efter nogen diskussion afviste ethvert krav fra Ylönen om at omdøbe protokollen med henvisning til, at det ville skabe en uønsket præcedens for andre mærker. Medlemmer af arbejdsgruppen hævdede, at betegnelserne "Secure Shell" og "SSH" er grundlæggende begreber og ikke kan være varemærker.

Portabilitet

Dels fordi OpenSSH skal udføre autentificering, som kan være meget forskellig på forskellige operativsystemer, er der skabt en stærk infrastruktur for at muliggøre portabilitet . Det, der ikke direkte var inkluderet i OpenBSD, blev udpeget af et udviklingsteam bestående af Damien Miller ,  Philip Hands og andre som et underprojekt af OpenSSH Portable .  Nu, parallelt og samtidigt med udgivelsen af ​​OpenSSH "for OpenBSD", begyndte såkaldte " bærbare udgivelser " at blive frigivet. Disse udgivelser er angivet med et "p" i slutningen, for eksempel: OpenSSH_5.1p1 . Denne organisering af udviklingsprocessen blev senere brugt i andre projekter udviklet inde i OpenBSD, såsom OpenNTPD .

Sammensætning

OpenSSH-pakken indeholder følgende komponenter:

ssh Erstatning for rlogin og telnet . scp En erstatning for rcp , som bruger SFTP -protokollen i moderne versioner af OpenSSH (tidligere blev den mindre pålidelige og fleksible SCP brugt ). sftp En erstatning for en FTP - klient, der bruger SFTP -protokollen . sshd En dæmon , der faktisk giver sikker adgang til ressourcer. Indeholder en SFTP-backend - implementering, der er velegnet til chroot- brugere uden at skulle kopiere nogen filer inde i chroot . sftp-server Separat implementering af SFTP -undersystemet ( serverdel ). Har flere funktioner end den indbyggede sshd . ssh-keygen Nøglepar generator. ssh-tastetegn Værktøj til kontrol af værtsnøgler. Aktiveret ved brug af værtsgodkendelse (svarende til rsh ) i stedet for standardbrugergodkendelsen. ssh-keyscan Hjælpeværktøj. Giver dig mulighed for at indsamle offentlige nøgler fra andre værter. ssh-agent Hjælpeværktøj. Vedligeholder privat nøglecache . Caching giver dig mulighed for at undgå hyppigt at indtaste en adgangskode for at dekryptere nøgler, før du bruger dem. ssh tilføje Hjælpeværktøj. Tilføjer nøgler til ssh-agent- cachen .

Sikre tunneler

Port forwarding

De fleste programmer bruger TCP -protokollen til at etablere en forbindelse , hvis trafik kan transmitteres gennem en sikker tunnel. På denne måde kan mange yderligere TCP-forbindelser etableres oven på en enkelt SSH-forbindelse. Dette er nyttigt til at skjule forbindelser og kryptere protokoller, der er usikre, samt til at omgå firewall -restriktioner . UDP - forbindelser kan nogle gange også tunneleres ved hjælp af yderligere programmer såsom netcat . Simple tunneling-protokoller er HTTP , POP3 og VNC .

Port forwarding er mulig i alle retninger.

Derudover kan noget software automatisk bruge OpenSSH til at oprette en tunnel. For eksempel DistCC , CVS , rsync og fetchmail .

Af de protokoller, der er sværere at tunnelere, er det værd at bemærke FTP , som ofte kan erstattes af SFTP , og SMB . På nogle operativsystemer kan eksterne filsystemer ssh-monteres ved hjælp af shfs , lufs og andre lignende komponenter.

X Window System

OpenSSH giver dig mulighed for sikkert at organisere forbindelser til X Window System under hensyntagen til "vending" af semantikken: SSH-værtsklienten til X Window System er en server og omvendt. For at gøre dette udfører OpenSSH yderligere operationer, såsom indstilling af DISPLAY-miljøvariablen.

SOKKER

OpenSSH kan bruges som en speciel SOCKS proxyserver, der understøtter mere fleksibel proxying end blot portvideresendelse.

VPN

Fra og med version 4.3 kan OpenSSH bruge lag 2 og lag 3 tunnelnetværksgrænseflader af OSI-modellen ( tun ). Således kan du organisere en sikker VPN og undvære behovet for at lave applikationer om for at understøtte SOCKS.

Godkendelse

OpenSSH-serveren kan godkende brugere ved hjælp af de indbyggede godkendelsesmekanismer:

Derudover kan OpenSSH Portable normalt bruge de autentificeringsmetoder, der er tilgængelige på et specifikt operativsystem, såsom BSD Authentication eller PAM .

Noter

  1. OpenSSH 9.1 - 2022.
  2. https://www.openhub.net/p/openssh/analyses/latest/languages_summary
  3. Liste over SSH-implementeringer til Unix-systemer  (engelsk)  (link ikke tilgængeligt) . Arkiveret fra originalen den 22. februar 2012.

Baseret på artiklen:

Links