V tomto tutoriálu vám ukážeme, jak nastavit SFTP server na Ubuntu 22.04 Jammy Jellyfish.
FTP je skvělý protokol pro přístup k souborům a jejich přenos, ale má tu nevýhodu, že jde o protokol s čistým textem. . Jinými slovy, použití přes internetové připojení není bezpečné, protože vaše přihlašovací údaje a data se přenášejí bez šifrování. „S“ v SFTP znamená „Secure“ a tuneluje protokol FTP prostřednictvím SSH, čímž poskytuje šifrování potřebné k navázání zabezpečeného připojení.
V tomto tutoriálu se naučíte:
- Jak nainstalovat a nakonfigurovat démona SSH
- Jak nastavit uživatelský účet a skupinu SFTP
- Jak se připojit k serveru SFTP přes GUI
- Jak se připojit k serveru SFTP pomocí příkazového řádku
Kategorie | Požadavky, konvence nebo použitá verze softwaru |
---|---|
Systém | Ubuntu 22.04 Jammy Jellyfish |
Software | Démon SSH |
Jiné | Privilegovaný přístup k vašemu systému Linux jako root nebo prostřednictvím sudo příkaz. |
Konvence | # – vyžaduje, aby dané linuxové příkazy byly spouštěny s právy root buď přímo jako uživatel root, nebo pomocí sudo příkaz$ – vyžaduje, aby dané linuxové příkazy byly spouštěny jako běžný neprivilegovaný uživatel |
Konfigurace démona SSH
- SFTP vyžaduje SSH, takže pokud ve vašem systému ještě není nainstalován SSH server, nainstalujte jej otevřením terminálu příkazového řádku a provedením následujících příkazů:
$ sudo apt update $ sudo apt install ssh
- Jakmile je SSH nainstalováno, musíme provést nějaké změny v konfiguračním souboru SSHD. Pomocí nano nebo svého oblíbeného textového editoru jej otevřete s právy root:
$ sudo nano /etc/ssh/sshd_config
- Posuňte se na konec souboru a přidejte následujících 5 řádků na úplný konec:
Match group sftp ChrootDirectory /home X11Forwarding no AllowTcpForwarding no ForceCommand internal-sftp
Výše uvedené řádky umožní uživatelům v
sftp
group pro přístup ke svým domovským adresářům přes SFTP, ale odepře jim normální přístup SSH, takže nikdy nemají přístup k shellu. Po vložení těchto řádků uložte a zavřete konfigurační soubor. - Chcete-li restartovat službu SSH, aby se tyto nové změny projevily, spusťte následující příkaz:
$ sudo systemctl restart ssh
Když je SSH správně nakonfigurováno, můžeme přejít k nastavení účtu SFTP pro uživatele.
Vytvořit uživatelský účet SFTP
Nyní musíme vytvořit uživatelské účty pro každého, komu chceme udělit přístup SFTP.
- Vytvořte novou uživatelskou skupinu s názvem
sftp
. Všichni naši uživatelé SFTP budou muset patřit do této skupiny.
$ sudo addgroup sftp
- Dále vytvořte nového uživatele. Našemu budeme jednoduše říkat
sftpuser
v tomto příkladu, ale můžete si to pojmenovat, jak chcete. Nezapomeňte také přidat tohoto uživatele dosftp
skupina, kterou jsme právě vytvořili.$ sudo useradd -m sftpuser -g sftp
- Nastavte heslo pro nově vytvořený
sftpuser
. Pro ověření budete muset zadat nové heslo dvakrát.$ sudo passwd sftpuser
- A konečně, udělme úplný přístup uživateli v jeho vlastním domovském adresáři, ale odepřeme přístup k adresáři všem ostatním uživatelům v systému:
$ sudo chmod 700 /home/sftpuser/
Naše konfigurace SFTP je dokončena a nyní se můžeme přihlásit, abychom se ujistili, že vše funguje správně.
Přihlaste se k SFTP pomocí příkazového řádku
Můžete se přihlásit přes SFTP pomocí názvu hostitele nebo IP adresy vašeho systému. Chcete-li testovat ze stejného systému, na kterém jste právě nakonfigurovali SFTP, připojte se k adrese zpětné smyčky 127.0.0.1
bude fungovat dobře.
- Otevřete terminál a přihlaste se pomocí
sftp
asftpuser
účet (nebo jakýkoli název, který jste se rozhodli pro svůj používat). Budete požádáni o zadání hesla, které jsme pro tohoto uživatele nakonfigurovali v předchozí části.$ sftp [email protected]
- Přejděte do domovského adresáře uživatele, protože to je jediné místo, kde má oprávnění. Zde zkuste vytvořit nový adresář, abyste se ujistili, že vše funguje, jak má:
sftp> cd sftpuser sftp> mkdir sftp-test sftp> ls sftp-test sftp>
Přihlaste se k SFTP pomocí GUI
Pokud pro připojení k serveru SFTP dáváte přednost použití aplikace GUI, máte k dispozici mnoho možností. Můžete použít preferovaného klienta SFTP nebo toho, který je ve výchozím nastavení integrován do Ubuntu 22.04 – správce souborů Nautilus v GNOME.
- Otevřete správce souborů Nautilus z nabídky Aplikace.
- Klikněte na „Další umístění“ a zadejte
sftp://127.0.0.1
v poli „Připojit k serveru“ ve spodní části okna a klikněte na připojit. - Zadejte přihlašovací údaje účtu SFTP, které jsme nastavili dříve, a klikněte na připojit.
- Po úspěšném připojení budete moci otevřít svůj domovský adresář a zobrazit testovací adresář, který jste vytvořili dříve.
Úvahy na závěr
V článku SFTP Server jsme viděli, jak vytvořit SFTP server a následně se k němu přihlásit na Ubuntu 22.04 Jammy Jellyfish Linux. Také jsme se zabývali tím, jak používat příkazový řádek a GUI Ubuntu pro připojení k FTP serveru.
V tomto článku jsme viděli, jak zabezpečit protokol FTP nastavením SFTP v našem systému. Podle pokynů v této příručce mohou počítače ve vaší místní síti nebo na internetu bezpečně přistupovat k vašemu systému za účelem ukládání a načítání souborů, a to buď prostřednictvím příkazového řádku, nebo prostřednictvím preferovaného klienta SFTP.