Kategorien
Content Management Systeme Datenbanken Infrastruktur Shared Hosting Webdesign Wunschthema

Kein Admin Passwort für WordPress vorhanden?

In der letzten Zeit durfte ich mehrmals ungepflegte WordPress Websites auf den neuesten Stand bringen. Der Fall sieht oft so aus, dass dem Kunden von einer Agentur, einem Freelancer, einem Mitglied der Familie oder des Freundeskreises eine Website eingerichtet wurde, ein irgendwie ausgestalteter Wartungsvertrag aber nicht besteht. In so einer Situation werden Updates nicht mehr eingespielt, Verträge für kostenpflichtige Plugins werden nicht verlängert und die Website unterliegt nach kurzer Zeit der Theorie der zerbrochenen Scheiben. Die gilt zwar eigentlich nur für Stadtviertel, passt aber meiner Meinung nach auch gut für Websites. Als „Helfer in der Not“ erhalte ich dann oft handbeschriebene Zettel mit Passworten, Account-, Datenbank- , User- und Hostnamen, gern auch durchgestrichen und verbessert. Die moderne Variante sind in einer Textdatei (gern auch Microsoft Word oder ein Tool das vor 4 Jahren aktuell war) zusammenkopierte E-Mail Fragmente. Manchmal sind die Daten, genau wie Website, nicht mehr aktuell und ein Zugang zur Website ist schwierig.
Ich beschreibe hier den häufig von mir beschrittenen Weg um Admin Zugriff auf eine WordPress Site zu erhalten.

Kategorien
Infrastruktur seafolly.ch Server Shared Hosting Webdesign Wunschthema

Ein FTP Client im Browser – net2ftp

Das Dateiübertragungsprotokoll FTP (File Transfer Protokoll) definiert Regeln um Dateien von einem Client (FTP-Programm) zu einem Server (Web-Server) hoch- und herunterladen zu können. Verzeichnisse und Dateien können umbenannt und gelöscht werden. Verzeichnisse können angelegt werden. Das Protokoll wurde 1985 spezifiziert und ist auch heute noch sehr verbreitet.

Wenn du in deinem Browser beispielsweise die folgende Adressierung mit deinen FTP Zugangsdaten eingibst, erhältst du eine Liste deiner Dateien.

ftp://[ftp_benutzer[:ftp_pw]@]Servername[:Port]

ftp:// – Protokoll
ftp_benutzer – Der im Server konfigurierte Benutzername
ftp_pw – Passwort
Servername – Domainname oder IP Adresse des Servers
Port – 21 ist der unverschlüsselte Standard Port, 22 ist der Port für die verschlüsselte Variante (SFTP).

FTP-Verbindung im Browser (hier Opera)
Unverschlüsselte FTP-Verbindung im Browser (hier Opera)

Du kannst zwischen den Verzeichnissen wechseln und Dateien herunterladen. Einen praktischen Nutzen hat das für das Anbieten von freien Downloads.
Hier ein Beispiel für einen Server, der ältere Apple Software sammelt und zum Download anbietet (http://ftp.iinet.net.au/pub/apple/).

Hinweis: Aus naheliegenden Sicherheitsgründen sollte man immer SFTP benutzen, die sichere Variante des FTP Protokolls und Apple Software sollte man grundsätzlich nur bei Apple herunterladen 🙂

In den letzten Jahren wurden die meisten öffentlichen FTP Server durch Systeme in der Cloud ersetzt. Apple hat sein öffentliches FTP Angebot im Jahr 2015 eingestellt.

Chromebook

In vielen Firmen werden mittlerweile aus Kostengründen Chromebooks eingesetzt. Die Geräte sind auf den Webbrowser Chrome reduziert und jede Anwendung muss als Webanwendung im Browser laufen.

Das funktioniert prinzipiell auch ganz gut, hin und wieder benötigt man aber doch etwas mehr, wie beispielsweise eine sichere FTP Verbindung. Und damit sind wir endlich beim Hauptthema dieses Beitrags angekommen 🙂

Wie nutze ich FTP in einem Browser?

Wenn es nur um den reinen Download geht ist es kein Problem, wie aber lade ich beispielsweise Dateien hoch?

Hosting Provider

Die meisten Hosting Provider bieten einen FTP Client innerhalb der Verwaltungsoberfläche im Browser an. In unserem Fall ist das die Dateiverwaltung von cPanel. Es lässt sich überraschend gut damit arbeiten. Wenn du die Dateiverwaltung noch nie benutzt hast, solltest du sie mal ausprobieren.

cPanel-Dateiverwaltung
cPanel-Dateiverwaltung

Kundendateien per FTP

Wenn du beruflich oder privat mit Websites zu tun hast, musst du immer mal wieder Dateien irgendwo hochladen oder ändern. Meistens hast du eben nicht den Zugriff auf das komplette Provider Backend, sondern „nur“ die Zugangsdaten auf ein für dich eingerichtetes FTP Konto.

Solange du einen PC mit Microsoft Windows, Apple macOS oder Linux besitzt, ist das kein Problem. Du installierst einen FTP Client und stellst eine Verbindung her. Selbst die jeweiligen Datei Manager können FTP Verbindungen als Ordner einbinden.
Auf einem Chromebook geht das aber nicht.
Und da kommt das Projekt net2ftp ins Spiel

net2ftp

net2ftp ist ein freier FTP Client im Browser. Auf der Website net2ftp.com wird das Programm als Service betrieben. Du könntest die Zugangsdaten des gewünschten Servers dort eingeben und wärst dann per SFTP verbunden. Ich empfehle das allerdings aus Sicherheitsgründen ausdrücklich NICHT, weil ich nicht weiß, wer diesen Server betreibt.

Du kannst das Programm aber auch downloaden und selbst auf deinem Server installieren oder deinen Administrator darum bitten. Die Grundinstallation ist sehr einfach. Nach dem Download und dem Auspacken von net2ftp_v1.1.zip entsteht das Unterverzeichnis files_to_upload.

Diese Dateien müssen nur auf deinen Webserver geladen werden und das /temp Verzeichnis benötigt Schreib- und Ausführungsrechte (0777).

net2ftp - Dateien
net2ftp – Dateien

Danach ist net2ftp sofort einsatzbereit. Nach dem Aufruf über den Browser erscheinen die Anmeldeformulare. Achte darauf, die sichere SSH Anmeldung zu benutzen!

net2ftp - SSH Anmeldung
net2ftp – SSH Anmeldung

Du kannst nun in den Verzeichnissen navigieren und alle FTP Features nutzen. Dateien können bearbeitet werden.

net2ftp - seafolly
net2ftp – seafolly

Wenn du beispielsweise CSS oder PHP Dateien bearbeitest, wird der Code farblich hinterlegt.

net2ftp - Editor
net2ftp – Editor

In der Datei settings.inc.php lassen sich verschiedene Einstellungen vornehmen (E-Mail Adresse, Sprache). Wenn die Aktionen der Benutzer protokolliert und gegebenenfalls reglementiert werden sollen, musst du eine MySQL Datenbank anlegen, die mitgelieferte Datei create_tables.sql importieren und die Zugangsdaten in die settings.inc.php eintragen. Danach ist es möglich die Server Ressourcen zu begrenzen.

Fazit

Für den beschriebenen Anwendungszweck auf dem Chromebook ist net2ftp ein gute FTP Lösung.

Link

https://www.net2ftp.com


tl;dr: net2ftp ist ein web basierter FTP Client.

 

Save

Kategorien
Allgemein Server

Manchmal braucht man einen FTP Server

Das File Transfer Protokoll (FTP) ist in diesem Jahr 30 Jahre alt geworden. Es ist nach wie vor ein gebräuchliches Protokoll um Dateien auf einen Server zu laden. Wenn Sie jemals ein Webhosting auf einem Server betrieben haben (oder auch heute noch betreiben), so sind Sie mit FTP schon mal in Kontakt gekommen. Sie erhalten vom Betreiber des FTP Services normalerweise einen Benutzernamen, ein Passwort und die IP-Adresse des Servers (oder einen Domainnamen wie ftp.ihredomain.ch). Damit haben Sie dann über einen Client wie FileZilla Zugriff auf die Festplatte des Servers.

Sie können eine FTP Verbindung auch als Erweiterung der Festplatte in Windows, Mac OS X und in Linux benutzen. Als Anbieter des Services können Sie per FTP Dateien zum Download anbieten. Selbst mit einem normalen Internetbrowser können Sie per FTP auf Verzeichnisse des Servers zugreifen.

Sie können auch einen FTP Server anbieten, mit dem sich anonyme Nutzer verbinden und Dateien speichern und laden können.

Die Daten werden beim herkömmlichen FTP unverschlüsselt übertragen!

In der Anfangszeit des Internet war FTP quasi das, was heute unter dem Begriff „Cloud“ läuft. Oftmals werden auch heute noch Backups per FTP auf entfernte Server übertragen.

Vor etwa 15 Jahre begann man sich aus Sicherheitsgründen Gedanken über eine Verschlüsselung des Protokolls zu machen und kombinierte das SSH Protokol mit dem FTP zu SFTP. Das SSH Protokoll nutzt die Public Key Verschlüsselung, d.h. der Anbieter des SFTP-Services muss sich einen öffentlichen Schlüssel erzeugen und dem Client bereitstellen.

Wenn Sie „nur“ Kunde eines solchen SFTP-Services sind, wie beispielsweise unsere Webhosting Kunden, können Sie die Verschlüsselung (SSH/TLS) erkennen, wenn Sie sich per FileZilla verbinden.

Status: Resolving address of ftp.seafolly.ch
Status: Connecting to 194.150.248.132:21...
Status: Connection established, waiting for welcome message...
Status: Initializing TLS...
Status: Verifying certificate...
Status: TLS connection established.
Status: Connected
Status: Retrieving directory listing...
Status: Directory listing of "/" successful

Wenn Sie einen Root-Server betreiben, so kommt es auf Ihre Konfiguration an, ob bereits ein FTP-Server vorhanden ist. Wenn Sie, so wie ich, eine Ubuntu-Server Distribution verwenden, dann ist dort kein FTP Server installiert. Oftmals benötigt man gar keinen FTP-Zugriff auf dem eigenen Server aber manchmal eben doch.

Um nun keine ganz groben Fehler bei der Installation zu machen, möchte Ich Ihnen heute die Installation und Konfiguration des vsftpd vorstellen. vsftpd steht für very secure file transfer protocoll daemon also so etwa genau das, was wir gerne hätten. Der Slogan des Projekt ist ganz bescheiden

Probably the most secure and fastest FTP server for UNIX-like systems.

Installation unter Ubuntu 14.04

Die grundsätzlich Installation geht leicht von der Hand

sudo apt-get install vsftpd

Der Server ist nun installiert, benutzt die Standardkonfiguration und „läuft“.

Alle im System User können sich nun anmelden und Dateien aus Ihrem /home Verzeichnis herunterladen. Sie dürfen aber keine Daten schreiben! Der Datenverkehr findet auch ganz klassisch unverschlüsselt statt und daher müssen Sie die Datei /etc/vsftpd.conf nach Ihren Befürfnissen konfigurieren. Mit dem Befehl

sudo nano /etc/vsftpd.conf

rufen Sie die Datei auf und nach dem Speichern müssen Sie mit dem Befehl

sudo restart vsftpd

den FTP-Server neu starten. Die Konfigurationsdatei ist sehr gut kommentiert, so dass die meisten Einstellungen selbsterklärend sind. Die meisten Befehle stehen auskommentiert mit einem Kommentar versuehen bereits in der Datei. Sie müssen nur noch das #-Zeichen davor entfernen. Die aus meiner Sicht wichtigsten Änderungen sind folgende:

Nutzer sollen auch schreiben können

write_enable=YES

Nutzer sollen ihr /home Verzeichnis nicht verlassen können

chroot_local_user=YES

Nicht alle Nutzer sollen FTP Zugriff erhalten.
Dazu schreiben wir die Namen der Nutzer, die Zugriff erhalten sollen, in die Datei /etc/vsftpd.chroot_list (pro Zeile ein User Name).

chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list

Verschlüsselung

Die einfachste Art eine Verschlüsselung einzurichten besteht im FTPS Protokoll. Beim SFTP Protokoll muss eine eigene Datei mit FTP Usern gepflegt werden. Dabei können auch User sein, die über keinen System User Account verfügen und damit auch kein Home Verzeichnis haben. Ich gehe hier davon aus, dass jeder FTP User auch System User ist und das wir uns ein Zertifikat selbst erzeugen.

In der /etc/vsftpd.conf müssen Sie dann die folgenden Befehle auskommentieren bzw. eintragen

ssl_enable=Yes
rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key

Die Zertifikate sind auf Ihrem System bereits installiert und sind selbstsigniert (daher der Name snakeoil). Es ist für die Nutzer nicht überprüfbar, ob das Zertifikat vertrauenswürdig ist, weil es selbst erstellt ist. Wenn Sie aber Ihre FTP User kennen und die Sie auch, dann spielt dieser Punkt keine Rolle, denn die Verschlüsselung funktioniert technisch genau wie bei einem „bestätigten“ Zertifikat.

Wenn Sie nun den FTP-Server neu starten und sich beispielsweise mit FileZilla verbinden, so erhalten Sie eine solche Nachricht:

Selbst signiertes Zertifikat
Selbst signiertes Zertifikat

Sie können die Meldung mit ok bestätigen und Ihr „sicherer“ FTP Server funktioniert nun.

Einen interessanten Artikel zum Thema AES finden Sie hier: AES – die Geschichte eines Standards

 

Links

https://help.ubuntu.com/lts/serverguide/ftp-server.html

https://security.appspot.com/vsftpd.html


tl;dr: Ein FTP Server ist manchmal praktisch und kann auch sicher sein

Kategorien
seafolly.ch Shared Hosting

Dateiverwaltung im Webhosting Paket – seafolly.ch zieht um

Nachdem wir ein Webhosting Paket für seafolly.ch eingerichtet haben (Ein Webhosting Paket für das #kunstprojekt), will ich Ihnen in diesem Artikel eine Übersicht über die ersten Schritte auf dem Weg zur Website geben. In der Bestätigungsmail bei der Bestellung erhalten alle Kunden auch einen Link zu den NOVATREND FAQ (NOVATREND FAQ Erste Schritte). Erster Tipp daher: Lesen Sie diesen Teil der FAQ 🙂

Im Falle von seafolly.ch gibt es bereits eine Website, die ich vor ein paar Wochen auf einem anderen Server erstellt habe (Yellow ist für Menschen die Websites machen) und die ich nun gern auf den neuen Webspace übertragen möchte. Daher sind meine wichtigsten technischen ersten Schritte:

  1. Wie kann ich mein Webhosting Paket administrieren?
  2. Wie lade ich Dateien auf meinen Webspace?

Webhosting administrieren

Im Administrationsbereich Ihres Webhosting Pakets gibt es den Bereich Produkte & Services.

novatrend.ch Produkte & Services
novatrend.ch Produkte & Services

In der Tabelle werden alle bestellten Produkte aufgelistet, in meinem Fall das seafolly.ch Paket. Die Konfiguration des Pakets findet über das Softwarepaket cPanel statt.

cPanel

cPanel ist ein web-basiertes Konfigurationstool (Wikipedia). Da cPanel sehr viele Konfigurationseinstellungen erlaubt, sieht es auf den ersten Blick, nunja, sagen wir mal beeindruckend aus :).
Im oberen Bereich wird die aktive Domäne angezeigt (seafoll1).
Darunter sind vier Tabs angeordnet. Unter Home finden Sie die Verwaltungsoberfläche für die aktive Domäne.

cPanel
cPanel

Wenn Sie sich dort umsehen, finden Sie wirklich alles, was man so braucht um ein PHP/MySQL Webhosting zu verwalten.
Wir können momentan die Standardeinstellungen belassen und uns den Datein zuwenden.

Dateien auf den Server laden

Grundsätzlich haben Sie viele Möglichkeiten, die je nach Situation sinnvoll genutzt werden können.

FTP – File Transfer Protokoll

FTP ist ein Netzwerkprotokoll aus dem Jahr 1985 das auch heute noch sehr verbreitet ist. Genutzt wird es normalerweise über ein Programm wie FileZilla, CoreFTP oder Cyberduck auf Ihrem lokalen Computer. Wenn Sie im cPanel auf den Link FTP-Konten klicken, sehen Sie bereits existierende FTP-Konten und haben die Möglichkeit neue FTP-Konten anzulegen. Die Passworte werden nicht angezeigt. Bei der Bestellbestätigung für Ihr Webhosting Paket haben Sie bereits die Zugangsdaten für den FTP Zugriff erhalten.

cPanel - FTP-Konten
cPanel – FTP-Konten

Ich benutze FileZilla, weil das Programm auf allen Betriebssystemen läuft und Open Source Software ist. Sie können sich die FTP-Konfigurationsdateien aus cPanel herunterladen und in FileZilla importieren. Standardmässig ist das Übertragungsprotokoll so eingestellt, das die Dateien verschlüsselt übertragen werden. Das Passwort muss allerdings bei jeder Verbindung neu eingegeben werden (das kennt cPanel natürlich auch nicht). Sie können das Passwort aber auch dauerhaft in FileZilla speichern. Die Speicherung erfolgt verschlüsselt und ist praktisch, wenn Sie viel mit dem Programm arbeiten. Die Speicherung erfolgt leider nur Base64-kodiert. Das Klartext Passwort ist daher einfach ermittelbar (todo – Blogeintrag über das Thema).

FileZilla
FileZilla

Wenn Sie sich mit dem Server verbunden haben, sehen Sie auf der rechten Seite die Dateien und Verzeichnisse. Das öffentliche Dokumentenverzeichnis ist /public_html. Wenn Sie den symbolischen Link /www anklicken gelangen Sie auch nach /public_html. In dieses Verzeichnis müssen Sie Ihre Dateien kopieren, damit der Browser darauf zugreifen kann.

FileZilla
FileZilla

Umzug der seafolly.ch Website

Die Seafolly.ch Website liegt auf noch auf unserem Testserver. Die Dateien sind nicht lokal bei mir auf dem Computer. Ich könnte die Dateien nun erst zu mir downloaden und dann wieder per FTP hochladen. Ich kann sie allerdings auch gleich vom Testserver, beispielsweise mit dem Midnight Commander (GNU Midnight Commander – der ultimative Dateimanager), direkt auf das Westhosting kopieren. Der Verbindungaufbau erfolgt nach diesem Schema

ftp://[user[:password]@]machine[:port]/[remote-dir]

also in unserem Fall

ftp://seafoll1:password@ftp.seafolly.ch/www
Im Midnight Commander sieht das dann so aus:

FTP Verbindung mit dem Midnight Commander
FTP Verbindung mit dem Midnight Commander

Die Dateien sind in Sekunden übertragen und die Seafolly Website ist wieder da! http://seafolly.ch

seafolly.ch
seafolly.ch

Weitere Möglichkeiten

Ausser der klassischen FTP-Verbindung können Sie sich auch auf andere Arten mit Ihrem Webhosting-Server verbinden und Dateien verwalten.

Secure Shell

Secure Shell (SSH) ist ebenfalls ein Netzwerkprotokoll. Es ist aus dem Jahr 1995 und standardmässig verschlüsselt. Es wird genutzt, um eine entfernte Kommandozeile sichtbar zu machen (Wikipedia).

Zur Verbindung benötigen Sie unter Windows beispielsweise das Programm Putty. Unter Mac OS und Linux genügt das Terminalprogramm

Eine Verbindung stellen Sie her mit dem Befehl

ssh seafoll1@seafolly.ch

Danach werden Sie nach Ihrem Passwort gefragt und sehen dann die Kommandozeile Ihres Servers

seafoll1@srv11 [~]#

Hier können Sie nun die entsprechenden Befehle eingeben, beispielsweise ls -l zur Datei- und Verzeichnisanzeige.

seafoll1@srv11 [~]# ls -l
total 80
drwx--x--x 14 seafoll1 seafoll1 4096 Sep 29 16:44 ./
drwxr-xr-x  3 root     nobody   4096 Sep 29 16:21 ../
-rw-r--r--  1 seafoll1 seafoll1   18 Jul 27 23:45 .bash_logout
-rw-r--r--  1 seafoll1 seafoll1  176 Jul 27 23:45 .bash_profile
-rw-r--r--  1 seafoll1 seafoll1  124 Jul 27 23:45 .bashrc
drwxrwx--x  4 seafoll1 seafoll1 4096 Sep 29 16:21 .cagefs/
drwxr-xr-x  2 seafoll1 seafoll1 4096 Sep 23 15:39 .cl.selector/
-rw-------  1 seafoll1 seafoll1    0 Sep 23 15:39 .contactemail
drwx------  5 seafoll1 seafoll1 4096 Sep 29 13:47 .cpanel/
drwx------  4 seafoll1 seafoll1 4096 Sep 23 15:39 .cphorde/
drwxr-x---  2 seafoll1 nobody   4096 Sep 23 15:39 .htpasswds/
-rw-r--r--  1 seafoll1 seafoll1  171 Aug 13 20:56 .kshrc
-rw-------  1 seafoll1 seafoll1   13 Sep 29 13:10 .lastlogin
drwx------  2 seafoll1 seafoll1 4096 Sep 29 13:10 .trash/
-rw-r--r--  1 seafoll1 seafoll1  658 Jul 28 06:50 .zshrc
lrwxrwxrwx  1 seafoll1 seafoll1   34 Sep 23 15:41 access-logs -> /usr/local/apache/domlogs/seafoll1/
drwxr-x---  2 seafoll1 mail     4096 Sep 29 13:47 etc/
drwxr-x---  8 seafoll1 seafoll1 4096 Sep 29 13:20 mail/
drwxrwxr-x  2 seafoll1 seafoll1 4096 Sep 29 16:44 perl5/
drwxr-x---  3 seafoll1 seafoll1 4096 Sep 23 15:39 public_ftp/
drwxr-x---  7 seafoll1 nobody   4096 Sep 29 16:21 public_html/
drwxr-xr-x  6 seafoll1 seafoll1 4096 Sep 24 14:18 tmp/
lrwxrwxrwx  1 seafoll1 seafoll1   11 Sep 23 15:39 www -> public_html/
seafoll1@srv11 [~]#

Mithilfe des SSH Protokolls können Sie Dateien auf der Kommandozeile kopieren, beispielsweise mit dem Befehl scp (secure copy). Hier ein Beispiel mit einer kleinen Datei.

Testdatei erstellen:

Hagens-MacBook-Air:~ hagengraf$ echo Hallo Welt > hallo.txt

Auf den Server kopieren:

Hagens-MacBook-Air:~ hagengraf$ scp hallo.txt seafoll1@seafolly.ch:www
seafoll1@seafolly.ch's password:
hallo.txt                   100%   11     0.0KB/s   00:00
Hagens-MacBook-Air:~ hagengraf$

Wenn Sie etwas tiefer in die Materie eintauchen, werden Sie anfangen die Kommandozeile zu mögen. Es ist allerdings vermutlich keine Liebe auf den ersten Blick 🙂

Dateiverwaltung via cPanel

cPanel bietet natürlich auch eine Möglichkeit Dateien zu verwalten. Im dritten Tab von cPanel befindet sich die Dateiverwaltung, mit der Sie über einen Browser alle Dateien und Verzeichnisse in einer grafischen HTML Oberfläche umfassend verwalten können. Die Funktionsweise ist selbsterklärend. Der www-Link wird hier nicht angezeigt. Ich nutze die Dateiverwaltung gleich mal um die hallo.txt Datei wieder zu löschen.

cPanel Dateiverwaltung
cPanel Dateiverwaltung

cPanel geht noch einen Schritt weiter und bietet auch Code- und HTML-Editoren zur Bearbeitung der Dateien an. Hier ein Beispiel mit dem Code-Editor.

cPanel Code Editor
cPanel Code Editor

Fazit

seafolly.ch ist erfolgreich umgezogen und Sie kennen nun schon drei verschiedene Arten der Dateiverwaltung bei einem Webhosting Paket.

Falls Ihnen die Sache gefällt, können Sie gern ein Webhosting Paket bestellen 🙂


tl;dr: Viele Wege führen zum Ziel, mindestens drei zu Ihren Dateien im Webhosting Paket