WordPress kommer förkonfigurerat med möjligheten att uppdateras med hjälp av FTP (File Transfer Protocol) eller FTPS (FTP med SSL).

 

WordPress utan SSH

Båda kommer med sina svagheter.

  • FTP är uråldrigt och byggdes helt utan säkerhet i åtanke. Både användarnamn, lösenord och datatrafik skickas helt i plain text. Användningsområdet sträcker sig på sin höjd till s.k. publika ftp-servrar, där all data är tänkt att vara tillgänglig för vem som helst. FTP kräver också särskild konfiguration av brandväggen på servern, och även om det går att lösa med viss handpåläggning känns det onödigt om det enda syftet är att uppdatera WordPress.
  • FTPS är FTP men med en krypterad kommunikationskanal (för användarnamn/lösenord) och möjlighet till krypterad datakanal. Detta har dock inte stöd i alla FTP-klienter. FTPS kräver precis som FTP samma konfiguration av brandväggen och dessutom konfiguration av SSL-certifikat. Ännu mer onödigt krångel bara för att uppdatera WordPress.

Lösningen på problemet heter SFTP (SSH File Transfer Protocol) och använder SSH för all kommunkation. Då SSH är standard på mer eller mindre alla Linux/Unix-maskiner är chansen stor att det redan finns installerat på servern där du har din WordPress sida, och dessutom att brandväggen redan är konfigurerad för att tillåta den trafiken. Dessutom har SSH ett utmärkt track record när det gäller säkerhet, så det går alldeles utmärkt att sova om natten även om man skulle ha bloggat om statshemligheter. Nackdelen med SSH är att många webbhotell inte låter sina kunder använda det, men det är ju en nackdel med ditt webbhotell snarare än med SSH-protokollet.

Hur konfigurerar vi då WordPress att använda SFTP istället? Svaret är att det gör vi inte, det gör WordPress nämligen helt själv förutsatt att rätt kodbibliotek finns installerat på servern. Då WordPress använder PHP behöver det kunna ”prata” SSH (eller rättare sagt med biblioteket libssh2) på något sätt. Lyckligtvis finns detta inkluderat i pakethanteraren till i stort sett alla linuxdistributioner.

Biblioteket heter till Debian/Ubuntu libssh2-php och installeras enkelt från terminalen;

sudo apt-get install libssh2-php

Motsvarande paket på Red Hat/Fedora heter php-pecl-ssh2 och installeras med;

sudo yum install php-pecl-ssh2

Efter det startar vi om webservern.

sudo service apache2 restart

eller motsvarande på Red Hat/Fedora

sudo service httpd restart

och Voila! Vi kan nu välja att använda SSH för att uppdatera WordPress.

WordPress med SSH

 

2 kommentarer till “Uppdatera WordPress med SSH/SFTP”

  1. Marcus skriver:

    Ska försöka använda ssh i fortsättningen. Tack så mycket!

  2. resclerry skriver:

    vad jag letade efter, tack

Kommentera