SFTP ehk SSH File Transfer Protocol (tuntud ka kui Secure File Transfer Protocol) on võrguprotokoll, mis pakub turvalist juurdepääsu serveri failidele ja failiedastust.
SFTP on SSH laiendus ja sarnaselt SSH’le toimub autentimine avaliku-privaatvõtmepaari kasutades.
SSH võtmepaar
Esmalt on vaja luua SSH võtmepaar ja selle avalikvõti lisada oma veebiserverile.
Juhendi selle jaoks leiab järgmisest abiartiklist:
SSH ühenduse loomine
Ühenduse loomine
Selles abiartiklis on juhised SFTP ühenduse loomise jaoks programmide FileZilla, WinSCP ja Visual Studio Code jaoks.
Lisaküsimuste puhul või kui kasutatakse mõnda teist programmi, tuleb lugeda programmi dokumentatsiooni ja abimaterjale (tavaliselt leitav programmis Help menüü alt).
FileZilla
Ava Site Manager
(1).
Lisa uus ühendus, vajutades Site Manager’i dialoogiaknas nupule New site
(2) ja andes sellele nime (nt veebiserveri domeeninimi) (3).
Vali protokolliks hüpikmenüüst SFTP
(4). Pordi tekstikasti võib jätta tühjaks, sest pordiks on kasutusel tavapärane 22.
Hosti tekstikasti sisesta majutusserveri IP-aadress või veebiserveri domeeninimi, mis on selles serveris majutatud (5). Soovitatav on kasutada IP-aadressi, mis välistab võimalikud DNS probleemid domeeniga.
Sisselogimise tüübiks (Logon Type) vali hüpikmenüüst Key file
(6). Toetatud on privaatvõtme formaadid PEM, kui ka PuTTY PPK. Kui privaatvõtme laadimiseks kasutatakse Pageant’i, siis vali selle jaoks Interactive
, selle puhul ei ole vaja määrata privaatvõtme asukohta arvutis.
User
tekstikasti sisesta virtkonto nimi (7).
Key file
jaoks vali arvutist privaatvõti, mille paariline-avalikvõti on lisatud Minu Zone
kaudu veebiserverisse (8).
Salvesta SFTP ühenduse seadistus vajutades nupule OK
(9).
Nüüd on SFTP ühendus veebiserveri jaoks seadistatud ja saab seda kasutades sisse logida vajutades nupule Connect
.
WinSCP
Ava Login dialoogiaken, vajutades vahelehele New tab
(1).
Ühenduse lisamiseks vajuta New site
(2).
Vali File protocol
hüpikmenüüst SFTP
(3).
Host name
tekstikasti sisesta majutusserveri IP-aadress või veebiserveri domeeninimi, mis on selles serveris majutatud (4). Soovitatav on kasutada IP-aadressi, mis välistab võimalikud DNS probleemid domeeniga. Pordinumber on 22.
User name
tekstikasti sisesta virtkonto nimi (5). Password tekstikast peab jääma tühjaks, sest autentimiseks kasutatakse võtmepaari.
Ava täpsemad seadistused, vajutades nupule Advanced
(6).
Avanenud dialoogiaknas Advanced Site Settings vali menüüst: SSH
> Authentication
(7).
WinSCP toetab ainult Putty formaadis privaatset võtit (faililaiendiga .PPK).
Kui privaatvõtme laadimiseks kasutatakse Pageant’i, siis märkida valituks Attempt authentication using Pageant
(8).
Või määrata privaatvõtme laadimise asukoht arvutist valikukastiga Private key file
(9).
Salvesta muudatus vajutades nupule OK
(10).
Salvesta ühendus vajutades nupule Save
(11), andes sellele nime.
Nüüd saab luua SFTP ühenduse valides vasakult nimekirjast ühenduse ja vajutades nupule Login
(12).
Visual Studio Code
Visual Studio Code jaoks on olemas valik erinevaid SFTP laiendusi. Selles juhendis kasutatakse järgmist SFTP laiendust selle jaoks:
Visual Studio Marketplace – SFTP
Github.com – vscode-sftp
Ava Visual Studio Code laienduste vaheleht (1) ja otsi selles laiendusi märksõna SFTP
kaudu (2) ning paigalda pildil allajoonitud laiendus, vajutades selle juures olevat nuppu Install
(3).
Kui paigaldatakse mõni teine SFTP laiendus, siis võib selle seadistamine ja funktsionaalsus erineda, kuid ühenduse loomise parameetrid on samad. Järgi seadistamisel laienduse dokumentatsiooni.
Ava Visual Studio Code’s kaust või workspace, milles olevaid faile soovid sünkroniseerida veebiserveris olevatega või kuhu soovid failid veebiserverist alla laadida – SFTP konfiguratsiooni fail sftp.json
luuakse selles kausta nimega .vscode
.
Ava command palette
(klahvikombinatsiooniga Ctrl + Shift + P) ja trüki selle tekstikasti SFTP: Config
(1), mis loob SFTP konfiguratsioonifaili ja avab selle seadistamise jaoks.
Kolm erinevat konfiguratsiooni faili sftp.json jaoks, olenevalt sellest, kuidas privaatne võti laaditakse
sftp.json konfiguratsioon privaatvõtme laadimisega:
{ "name": "example.com - SFTP", "host": "217.146.69.1", "protocol": "sftp", "port": 22, "username": "virt1234", "privateKeyPath": "~/.ssh/id_ed25519_example.com", "passphrase": true, "openSsh": false, "uploadOnSave": false }
sftp.json konfiguratsioon SSH config faili kasutamisega:
{ "name": "example.com - SFTP", "host": "217.146.69.1", "protocol": "sftp", "port": 22, "username": "virt1234", "sshConfigPath": "~/.ssh/config", "uploadOnSave": false }
sftp.json konfiguratsioon agendi kasutamisega:
{ "name": "example.com - SFTP", "host": "217.146.69.1", "protocol": "sftp", "port": 22, "username": "virt1234", "agent": "pageant", "remotePath": "/data01/virt1234/domeenid/www.example.com", "uploadOnSave": false }