Maj 23, 2026Poradniki
Jak skonfigurować SFTP do bezpiecznego transferu plików
Transfer plików przez SFTP w OpenSSH: osobni użytkownicy, izolacja katalogu, połączenie z FileZilla i WinSCP.

SFTP przesyła pliki przez szyfrowane SSH bez osobnego demona FTP. Na Linux VPS SFTP jest wbudowany w OpenSSH — bezpieczna konfiguracja na Hiddence.
SFTP z dedykowanym użytkownikiem
Utwórz użytkownika tylko do przesyłania plików:
bash
sudo adduser sftpuser
sudo passwd sftpuser
# Test SFTP from client:
sftp sftpuser@YOUR_VPS_IP
# Or use FileZilla: Protocol SFTP, port 22Izolacja katalogu (chroot), zalecane
Ogranicz użytkownika do jednego folderu na serwerze:
bash
sudo mkdir -p /var/sftp/sftpuser/upload
sudo chown root:root /var/sftp/sftpuser
sudo chmod 755 /var/sftp/sftpuser
sudo chown sftpuser:sftpuser /var/sftp/sftpuser/upload
sudo nano /etc/ssh/sshd_config
# Add at end:
Match User sftpuser
ChrootDirectory /var/sftp/sftpuser
ForceCommand internal-sftp
AllowTcpForwarding no
X11Forwarding no
sudo systemctl restart sshdPołączenie z komputera
Popularne klienty obsługują SFTP:
- FileZilla — Host: sftp://YOUR_VPS_IP, Port: 22, Logon Type: Normal
- WinSCP — Protocol: SFTP
- macOS Finder — Connect to Server: sftp://user@IP
- Linux: sftp user@IP or scp file user@IP:/path/
- VS Code — Remote SSH extension for direct editing
Bezpieczeństwo
- Klucze SSH zamiast haseł dla SFTP
- Nie udostępniaj root przez SFTP osobom trzecim
- Wyłącz logowanie hasłem dla root w sshd_config
- Dla kont „tylko upload” użyj chroot jak w przykładzie
- Zainstaluj Fail2ban na SSH
- W razie możliwości otwórz port 22 tylko z zaufanych IP
Wskazówki
- SFTP to nie FTP — port 21 nie jest potrzebny
- Dla WordPress wygodniejszy jest deploy przez SSH lub rsync
- rsync przez SSH jest szybszy przy dużych migracjach
- Przy błędzie uploadu sprawdź uprawnienia 755/644
- Po zmianach sshd_config trzymaj drugą sesję SSH otwartą