Android

Kuinka perustaa sftp chroot-vankila

Näin perustat yrityksen: Osakeyhtiön perustaminen

Näin perustat yrityksen: Osakeyhtiön perustaminen

Sisällysluettelo:

Anonim

Tässä opetusohjelmassa selitetään, kuinka määritetään SFTP Chroot Jail -ympäristö, joka rajoittaa käyttäjän kotihakemistoihin. Käyttäjät saavat vain SFTP-pääsyn, SSH-käyttö on poistettu käytöstä. Näiden ohjeiden tulisi toimia kaikissa nykyaikaisissa Linux-jakeluissa, mukaan lukien Ubuntu, CentOS, Debian ja Fedora.

SFTP-ryhmän luominen

Sen sijaan, että määrittäisimme OpenSSH-palvelimen kullekin käyttäjälle erikseen, luomme uuden ryhmän ja lisäämme kaikki chrootut käyttäjät tähän ryhmään.

Suorita seuraava groupadd komento luodaksesi sftponly käyttäjäryhmä:

sudo groupadd sftponly Voit nimetä ryhmän haluamallasi tavalla.

Käyttäjien lisääminen SFTP-ryhmään

Seuraava vaihe on lisätä rajoitettavat sftponly ohjausryhmään.

Jos tämä on uusi asennus ja käyttäjää ei ole, voit luoda uuden käyttäjätilin kirjoittamalla:

sudo useradd -g sftponly -s /bin/false -m -d /home/username username

  • -g sftponly -vaihtoehto lisää käyttäjän -g sftponly Optio -s /bin/false asettaa käyttäjän kirjautumiskotelon. Asettamalla sisäänkirjautumiskuoren arvoon /bin/false käyttäjä ei voi kirjautua palvelimelle SSH: n kautta. -m -d /home/username asetukset käskevät useradd: n luomaan käyttäjän kotihakemiston.

Aseta vahva salasana vasta luodulle käyttäjälle:

sudo passwd username

Muussa tapauksessa, jos käyttäjä, jota haluat rajoittaa, on jo olemassa, lisää käyttäjä sftponly ryhmään ja muuta käyttäjän kuori:

sudo usermod -G sftponly -s /bin/false username2

Käyttäjän kotihakemiston on oltava root-omistaman ja sillä on oltava 755 käyttöoikeutta:

sudo chown root: /home/username sudo chmod 755 /home/username

Koska käyttäjien kotihakemistot ovat pääkäyttäjän omistuksessa, nämä käyttäjät eivät voi luoda tiedostoja ja hakemistoja kotihakemistoihinsa. Jos käyttäjän kotona ei ole hakemistoja, sinun on luotava uudet hakemistot, joihin käyttäjällä on täysi käyttöoikeus. Voit luoda esimerkiksi seuraavat hakemistot:

sudo mkdir /home/username/{public_html, uploads} sudo chmod 755 /home/username/{public_html, uploads} sudo chown username:sftponly /home/username/{public_html, uploads}

Jos verkkosovellus käyttää käyttäjän public_html hakemistoa asiakirjan juurina, nämä muutokset voivat johtaa käyttöoikeusongelmiin. Esimerkiksi, jos sinulla on WordPress, sinun on luotava PHP-allas, joka toimii tiedostojen omistajana ja lisää web-virheet sftponly ryhmään.

SSH: n määrittäminen

SFTP on SSH: n osajärjestelmä ja tukee kaikkia SSH-todennusmekanismeja.

Avaa SSH-määritystiedosto /etc/ssh/sshd_config tekstieditorilla:

sudo nano /etc/ssh/sshd_config

Etsi rivi, joka alkaa Subsystem sftp , yleensä tiedoston lopusta. Jos rivi alkaa hashilla # poista hash # ja muokkaa sitä näyttämään seuraavalta:

/ Etc / ssh / sshd_config

Subsystem sftp internal-sftp

Tiedoston loppua kohti seuraava asetuslohko:

/ Etc / ssh / sshd_config

Match Group sftponly ChrootDirectory %h ForceCommand internal-sftp AllowTcpForwarding no X11Forwarding no

ChrootDirectory direktiivi määrittelee polun chroot-hakemistoon. %h tarkoittaa käyttäjän kotihakemistoa. Tämän hakemiston on oltava pääkäyttäjän omistuksessa, eikä mikään muu käyttäjä tai ryhmä voi kirjoittaa sitä.

Ole erityisen varovainen muuttaessasi SSH-määritystiedostoa. Väärä konfiguraatio voi aiheuttaa SSH-palvelun epäonnistumisen.

Kun olet valmis, tallenna tiedosto ja käynnistä SSH-palvelu uudelleen, jotta muutokset otetaan käyttöön:

sudo systemctl restart ssh

CentOS- ja Fedora-sovelluksissa ssh-palvelun nimi on sshd :

sudo systemctl restart sshd

Kokoonpanon testaaminen

Nyt kun olet määrittänyt SFTP-chrootin, voit yrittää kirjautua etälaitteeseen SFTP: n kautta chrootun käyttäjän valtuustiedoilla. Useimmissa tapauksissa käytät työpöydän SFTP-asiakasohjelmaa, kuten FileZilla, mutta tässä esimerkissä käytämme sftp-komentoa.

Avaa SFTP-yhteys sftp-komennolla, jota seuraa etäpalvelimen käyttäjänimi ja palvelimen IP-osoite tai toimialueen nimi:

sftp [email protected]

Sinua pyydetään antamaan käyttäjän salasana. Kun yhteys on muodostettu, etäpalvelin näyttää vahvistusviestin ja sftp> -kehotteen:

[email protected]'s password: sftp>

Suorita pwd komento alla olevan kuvan mukaisesti, ja jos kaikki toimii odotetusti, komennon pitäisi palata / .

sftp> pwd Remote working directory: /

Voit myös listata etätiedostot ja hakemistot ls komennolla ja sinun pitäisi nähdä aiemmin luomamme hakemistot:

sftp> ls public_html uploads

johtopäätös

Tässä opetusohjelmassa olet oppinut asentamaan SFTP Chroot Jail -ympäristön Linux-palvelimellesi ja rajoittamaan käyttäjien pääsyä heidän kotihakemistoonsa.

Oletuksena SSH kuuntelee porttia 22. Oletus SSH-portin muuttaminen lisää ylimääräistä suojaustasoa palvelimelle vähentämällä automatisoitujen hyökkäysten riskiä. Voit myös määrittää SSH-avainpohjaisen todennuksen ja muodostaa yhteyden palvelimeen antamatta salasanaa.

ssh sftp turvallisuus