SFTP Server Chroot Configuration | How to Setup Chroot SFTP in Linux
Innehållsförteckning:
- Skapa en SFTP-grupp
- Lägga till användare i SFTP-gruppen
- Konfigurera SSH
- Testa konfigurationen
- Slutsats
I den här tutorialen kommer vi att förklara hur man installerar en SFTP Chroot Jail-miljö som kommer att begränsa användarna till deras hemkataloger. Användarna kommer endast att ha SFTP-åtkomst, SSH-åtkomst kommer att inaktiveras. Dessa instruktioner bör fungera för alla moderna Linux-distributioner inklusive Ubuntu, CentOS, Debian och Fedora.
Skapa en SFTP-grupp
Istället för att konfigurera OpenSSH-servern för varje användare individuellt kommer vi att skapa en ny grupp och lägga till alla våra hackade användare i denna grupp.
Kör följande
groupadd
kommando för att skapa
sftponly
användargrupp:
sudo groupadd sftponly
Du kan namnge gruppen som du vill.
Lägga till användare i SFTP-gruppen
Nästa steg är att lägga till de användare du vill begränsa till
sftponly
gruppen.
Om detta är en ny installation och användaren inte finns kan du skapa ett nytt användarkonto genom att skriva:
sudo useradd -g sftponly -s /bin/false -m -d /home/username username
-
-g sftponlylägger till användaren i sftponly-gruppen. Alternativet-s /bin/falseanger användarens inloggningsskal. Genom att ställa in inloggningsskalet på/bin/falsekan användaren inte logga in på servern via SSH. Alternativet-m -d /home/usernameusername berättar för användaren att skapa användarkatalogen för användaren.
Ställ in ett starkt lösenord för den nyskapade användaren:
sudo passwd username
Annars om användaren du vill begränsa redan finns lägger du till användaren i
sftponly
gruppen och ändrar användarens skal:
sudo usermod -G sftponly -s /bin/false username2
Användarkatalogen måste ägs av root och ha
755
behörigheter:
sudo chown root: /home/username
sudo chmod 755 /home/username
Eftersom användarens hemkataloger ägs av rotanvändaren kommer dessa användare inte att kunna skapa filer och kataloger i sina hemkataloger. Om det inte finns några kataloger i användarens hem, måste du skapa nya kataloger som användaren har full åtkomst till. Till exempel kan du skapa följande kataloger:
sudo mkdir /home/username/{public_html, uploads}
sudo chmod 755 /home/username/{public_html, uploads}
sudo chown username:sftponly /home/username/{public_html, uploads}
Om en webbapplikation använder användarens
public_html
katalog som dokumentrot kan dessa ändringar leda till behörighetsproblem. Om du till exempel kör WordPress måste du skapa en PHP-pool som kommer att köras som användaren som äger filerna och lägga till webbserven i
sftponly
gruppen.
Konfigurera SSH
SFTP är ett delsystem av SSH och stöder alla SSH-autentiseringsmekanismer.
Öppna SSH-konfigurationsfilen
/etc/ssh/sshd_config
med din textredigerare:
sudo nano /etc/ssh/sshd_config
Sök efter raden som börjar med
Subsystem sftp
, vanligtvis i slutet av filen. Om linjen börjar med en hash
#
ta bort hash
#
och ändra den så att den ser ut enligt följande:
Subsystem sftp internal-sftp
Mot slutet av filen, följande block av inställningar:
Match Group sftponly ChrootDirectory %h ForceCommand internal-sftp AllowTcpForwarding no X11Forwarding no
ChrootDirectory
direktivet anger sökvägen till chroot-katalogen.
%h
betyder användarkatalogen. Den här katalogen måste ägs av rotanvändaren och inte skrivas av någon annan användare eller grupp.
Var extra försiktig när du ändrar SSH-konfigurationsfilen. Felaktig konfiguration kan göra att SSH-tjänsten misslyckas med att starta.
När du är klar spara filen och starta om SSH-tjänsten för att tillämpa ändringarna:
sudo systemctl restart ssh
I CentOS och Fedora heter ssh-tjänsten
sshd
:
Testa konfigurationen
Nu när du har konfigurerat SFTP-chroot kan du försöka logga in på fjärrmaskinen via SFTP med användarens referenser. I de flesta fall kommer du att använda en stationär SFTP-klient som FileZilla, men i det här exemplet kommer vi att använda sftp-kommandot.
Öppna en SFTP-anslutning med sftp-kommandot följt av fjärrserverns användarnamn och serverns IP-adress eller domännamn:
sftp [email protected]
Du blir ombedd att ange användarlösenordet. När den är ansluten visar fjärrservern ett bekräftelsemeddelande och
sftp>
:
[email protected]'s password: sftp>
Kör
pwd
kommandot, som visas nedan, och om allt fungerar som förväntat ska kommandot returnera
/
.
sftp> pwd Remote working directory: /
Du kan också lista fjärrfiler och kataloger med
ls
kommandot och du bör se de kataloger som vi tidigare har skapat:
Slutsats
I den här handledning har du lärt dig hur du installerar en SFTP Chroot Jail-miljö på din Linux-server och begränsar användarnas åtkomst till deras hemkatalog.
Som standard lyssnar SSH på port 22. Ändra standard SSH-port lägger till ett extra lager av säkerhet till din server genom att minska risken för automatiska attacker. Du kanske också vill ställa in en SSH-nyckelbaserad autentisering och ansluta till servern utan att ange ett lösenord.
ssh sftp säkerhetLedamöter av Europaparlamentet kommer att avgöra om en rad frågor, bland annat hur man reglerar telekomföretag i EU, hur man straffar företag som snedvrider konkurrensen, hur man delar radiofrekvenser som släpps av TV: s migrering till digital sändning och hur man skyddar medborgarnas data i den digitala tiden.
Men de är delade om huruvida IP-adresser ska ses som personuppgifter. "Vi kommer att be kommissionen att formellt lägga fram en rapport om detta", säger Malcolm Harbour, en brittisk konservativ parlamentsledamot som spelar en central roll för att hylla den så kallade telekomrevisionen genom parlamentet.
I det här inlägget ser vi hur du kan begränsa eller ställa in en tidsgräns för något användarkonto i Windows 10 / 8/7, med kommandot Net User. Netanvändare är ett kommandoradsverktyg som hjälper systemadministratörer till att lägga till eller ändra användarkontobeteende. Vi har redan tittat på några nätverkskommandon för administratörer, nu kan vi se hur du ställer in tidsgränser för lokala konton.
Begränsa eller ställa in tidsgräns för användarkonton
Hur man ställer in en video som ringsignal på Android-telefon
Lär dig hur du ställer in en video som ringsignal på Android-telefoner.







