Slik aktiverer og konfigurerer du SFTP på CentOS 7

Ved mange anledninger må vi overføre flere opplysninger mellom enheter, og den vanligste måten å gjøre det på, som har pågått i mer enn 20 år, er å bruke FTP -protokollen (File Transfer Protocol) og FTP som tillater overføring mellom tilkoblede datamaskiner. Til TCP tar klient / server -grunnlaget.

Med FTP bruker vi port 20 og 21. Nå har vi en ny forhåndsdefinert protokoll kalt SFTP som vi finner aktivert på alle servere som støtter SSH.

SFTP (SSH File Transfer Protocol) er forskjellig fra FTP -typen, selv om den støtter alle FTP -klientene vi finner i dag. Selv om SFTP er implementert for å legge til et lag med sikkerhet, presenterer det en sårbarhet på tilgangsnivået siden det, som standard, gir full tilgang til systembrukere for å overføre filer og bruke Shell.

I dag vil Solvetic lære hvordan du konfigurerer CentOS 7 for å forhindre at en bestemt bruker har SSH -tilgang med frihet til å manipulere systemet gjennom SFTP0 -protokollen.

1. Brukeropprettelse


Først vil vi opprette brukeren som vil ha tilgang begrenset av SSH, i dette tilfellet vil vi kalle det tilgang, vi utfører følgende:
 sudo adduser tilgang
Deretter tilordner vi et passord til den nye brukeren ved å utføre følgende:
 sudo passwd tilgang

2. Opprette katalogen for filoverføring


Når brukeren vår er opprettet, er det neste trinnet å opprette katalogen der SFTP vil handle, og forhindre tilgang, og dette må konfigureres med visse parametere.

Vi vil opprette en katalog som heter / var / sftp / uploads der / var / sftp -delen, rotbrukeren vil være dens eier, og ingen annen bruker vil ha aktive tillatelser, og i / var / sftp / opplastingsundermappen vil eieren være den nye brukerens tilgang. Vi lager katalogen ved å bruke følgende linje:

 sudo mkdir -p / var / sftp / uploads
Deretter etablerer vi rotbrukeren som eier i den angitte katalogen:
 sudo chown root: root / var / sftp
Vi gir skrivetillatelser til rotbrukeren og leser for de andre brukerne i den angitte banen:
 sudo chmod 755 / var / sftp

Nå endrer vi eieren av opplastinger slik at det er brukeradgang, vi utfører følgende:

 sudo chown access: access / var / sftp / uploads

3. Begrens tilgang til en katalog


I dette trinnet vil vi se hvordan du begrenser tilgang via terminal til brukerens tilgang, men om det vil være mulig å overføre filer. For dette må vi redigere SSH -serveren med den foretrukne redaktøren, vim eller nano, i følgende bane:
 sudo nano / etc / ssh / sshd_config
Vi vil se følgende:

I den siste delen av filen legger vi til følgende:

 Match brukertilgang ForceCommand intern-sftp PasswordAuthentication ja ChrootDirectory / var / sftp PermitTunnel no AllowAgentForwarding no AllowTcpForwarding no X11Videresending nei 

Vi lagrer endringene ved hjelp av tastekombinasjonen Ctrl + O og avslutter editoren med tastene Ctrl + X. Syntaksen som brukes innebærer følgende:

Match -brukerBe SSH -serveren om å bruke endringene på brukeren som er angitt der.

ForceCommand intern-sftpTvinger SSH -serveren til å kjøre SFTP for å forhindre tilgang til Shell.

PasswordAuthentication jaAktiver passordautentisering

ChrootDirectory / var / sftp /Det refererer til det faktum at den angitte brukeren ikke vil ha tilgang utover / var / sftp -banen.

AllowAgentForwarding no, AllowTcpForwarding no. og X11Videresending er ikke detDisse alternativene deaktiverer videresending av port, tunnelering og X11 -protokoll videresending for den angitte brukeren.

Når vi har lagret filen, vil vi utføre følgende kommando for å bruke endringene i SSH:

 sudo systemctl start sshd på nytt

4. Verifiserer SSH -tilkoblingen

Trinn 1
Med dette konfigurert, vil det være på tide å validere tilgang via SSH og bekrefte at bare filoverføringer vil være mulige. For dette går vi til forbindelsen gjennom SSH som i dette tilfellet vil være.

 ssh [email protected]
Når vi har angitt tilgangsinformasjonen, ser vi følgende melding:

Steg 2
Med dette har vi bekreftet at forbindelsen vil bli stengt gjennom SSH. Nå skal vi prøve tilkoblingen ved hjelp av sftp -protokollen:

 sftp [email protected]
Ved å skrive inn passordet vil vi se at tilkoblingen er vellykket, og vi vil kunne overføre filer:

Trinn 3
Der kan vi bruke kommandoen ls til å vise de tilgjengelige katalogene, og vi vil se opplastingsmappen vi har opprettet:

Trinn 4
Der kan vi flytte informasjon, men hvis vi prøver å gå tilbake til en katalog ovenfor ved hjelp av cd … får vi ikke en feil, men vi ser at ingen katalog kan vises:

Det er så enkelt at vi kan begrense tilgangen takket være sftp.

wave wave wave wave wave