SFTP je zkratka pro Secure File Transfer Protocol, který jsme použili pro bezpečný přenos dat do az vašeho místního systému. Funguje přes protokol SSH, a proto je považován za bezpečnější než jednoduchý FTP (File Transfer Protocol). Přenos dat je rutinní úkol každého správce systému a dalších vývojářů, kteří potřebují provést změny ve svém kódu.
V dnešním článku si tedy ukážeme podrobné kroky ke konfiguraci serveru SFTP a vytváření uživatelů s jejich určenými oprávněními k adresáři.
Pro demonstraci používáme pro nastavení SFTP Ubuntu 20.04 LTS, ale podobné kroky lze provést v případě, že používáte operační systém RHEL/CentOS.
Předpoklady:
Počínaje předpoklady se musíme ujistit, že máme uživatelská oprávnění sudo nebo root na serveru, kde potřebujeme vytvářet uživatele SFTP.
Začněme přihlášením do systému pomocí ssh, ke kterému můžete použít terminál Putty nebo Shell vašeho Linuxového desktopu.
# ssh -i key.pem [email protected]_server_ip
# sudo -i
Můžete se také přihlásit přímo do svého systému, ale ujistěte se, že používáte své vlastní uživatelské jméno a přihlašovací údaje.
Krok 1:Vytvoření nového uživatele pouze SFTP
Vytvoření nového uživatele pro SFTP je stejné jako my pro přidávání jakýchkoli jiných obecných uživatelů. Abychom však zamezili použití pouze pro účely SFTP, nepřiřadíme jej žádnému přihlašovacímu prostředí.
Spusťte níže uvedený příkaz a vytvořte uživatele SFTP zadáním jeho vlastního domovského adresáře.
# useradd -m -d /home/example.com sftp_user
Nastavte heslo nově vytvořeného uživatele pomocí příkazu „passwd“, jak je uvedeno níže.
# passwd sftp_user
Ujistěte se, že jste kvůli bezpečnosti nastavili složité heslo. Potom mu přiřaďte nologin shell úpravou souboru ‚passwd‘, jak je uvedeno níže.
# vim /etc/passwd
sftp_user:x:1001:1001::/home/example.com:/usr/sbin/nologin
Uložit a zavřít pomocí :wq! Chcete-li použít změny.
Krok 2:Nastavení oprávnění k adresáři
Po vytvoření nového uživatele musíme nastavit správná oprávnění k adresáři a vlastnictví k adresáři uživatele, který jsme vytvořili v prvním kroku.
# chmod 755 /home/example.com/
# chown root:root /home/example.com
Krok 3:Omezení přístupu k adresáři
Nyní máme nového uživatele pouze SFTP, dále musíme omezit jeho přístup k adresáři, aby byl přístupný do jeho určené domovské složky, kterou jsme vytvořili.
Abychom tak mohli učinit, upravíme konfigurační soubor ssh přidáním následujících parametrů.
# vim /etc/ssh/sshd_config
subsystem sftp internal-sftp Match User sftp_user ChrootDirectory %h AllowTCPForwarding no X11Forwarding no PasswordAuthentication yes ForceCommand internal-sftp
Před uložením provedených změn nezapomeňte přidat své uživatelské jméno do pole ‚Match User‘, zatímco ‚%h‘ představuje domovský adresář vašeho nově vytvořeného uživatele v omezeném prostředí. Tento 'ChrootDirectory' zajistí, že váš uživatel SFTP nebude mít přístup k žádnému jinému adresáři.
Uložte konfigurační soubor ssh, ověřte syntaxi, pokud došlo k problému, a poté restartujte jeho služby a potvrďte, zda běží pomocí níže uvedené příkazy.
# ssh -t
# systemctl restart sshd
# systemctl status sshd
Zde můžete vidět, že nejprve došlo k chybě v konfiguračním souboru ssh, kterou jsme opravili zakomentováním dodatečné položky a restartováním ‚sshd service.
Krok 4:Testování přihlášení SFTP
V tuto chvíli jsme připraveni používat našeho uživatele SFTp, ale předtím jej otestujeme, abychom se ujistili, že má pouze přístup SFTP pomocí příkazu ssh.
# [email protected]
Zatímco xx je třeba nahradit vaší vlastní IP serverem. V důsledku toho by mělo dojít k selhání připojení, jak je uvedeno níže.
Krok 5:Použití klienta SFTP
Pro víceplatformní operační systém je k dispozici několik klientů SFTP a můžete použít svého oblíbeného. Budeme to testovat pomocí FileZilla, což je jeden z nejlepších a nejužitečnějších FTP/SFTP klientů, který lze použít. Můžete si jej snadno stáhnout z jejich oficiálního odkazu.
Otevřete jej ve vašem systému a dejte IP adresu vašeho SFTP serveru spolu s vytvořeným uživatelským jménem a heslem.
Po úspěšném zadání přihlašovacích údajů budete mít přístup k určenému adresáři pouze tam, kde můžete nahrávat nebo stahovat data.
Závěr:
V tomto článku jsme probrali podrobné kroky k nastavení a novému serveru SFTP provedením změn konfigurace ssh, přidáním nových uživatelů a přiřazením požadovaných oprávnění k adresáři. Můžete přidat tolik uživatelů, kolik chcete, nebo jednoduše vytvořit novou skupinu a začlenit nové uživatele do této skupiny.