Die Sicherung deiner WordPress-Website ist ein Aspekt, den du nicht ignorieren kannst, wenn du die Daten deiner Kunden und die Online-Sicherheit nicht gefährden willst. Darüber hinaus sollte auch die Einhaltung relevanter Standards und Vorschriften eine Priorität sein. Tatsächlich gehen die Überwachung der Sicherheit und die Einhaltung von Vorschriften oft Hand in Hand und sind gleich wichtig.
Beides umzusetzen, kann jedoch eine Herausforderung sein, vor allem wenn du viele Websites zu verwalten hast. Mit den zahlreichen Endpunkten der Kinsta-API hast du jedoch programmatischen Zugang zu unserem sicheren Website-Hosting, das du weiter automatisieren und bearbeiten kannst.
In diesem Beitrag gehen wir der Frage nach, wie du die Kinsta-API nutzen kannst, um deine WordPress-Sicherheit zu verbessern, und wie du möglicherweise über die Möglichkeiten des MyKinsta-Dashboards hinausgehen kannst.
Außerdem werden wir uns mit der Strategie zur Einhaltung von Datenschutzbestimmungen auf deiner Website befassen. Nachdem wir die Möglichkeiten der Kinsta-API erkundet haben, bekommst du eine praktische Anleitung, wie du die Sicherheitsüberwachung und die Einhaltung von Vorschriften in deinen WordPress-Workflow integrieren kannst.
Kontinuierliche Sicherheitsüberwachung und Compliance verstehen
Deine Website ist für bestimmte Gruppen von großem Wert. Böswillige Nutzer/innen sehen nicht deine Produkte und Dienstleistungen – sie sehen Daten und Gewinnchancen. Im Jahr 2022 stellte SiteLock fest, dass die durchschnittliche Website jeden Tag etwa 100 Angriffen ausgesetzt ist.
Deshalb ist es wichtig, deine Sicherheit ständig zu überwachen und gleichzeitig zu prüfen, ob du die Vorschriften einhältst. Böswillige Absichten sind dynamisch, was bedeutet, dass du deine Sicherheitsvorkehrungen immer wieder neu bewerten, nachverfolgen und anpassen musst. Die OWASP Top 10 zeigt zum Beispiel, welche Arten von bösartigen Angriffen am beliebtesten sind, und diese Liste ändert sich bei jeder Erhebung.
Es gibt noch viele andere Gründe, warum du eine kontinuierliche Sicherheitsüberwachung einführen solltest:
- Du kannst proaktiv handeln, wenn es darum geht, potenzielle Bedrohungen zu erkennen und auf sie zu reagieren.
- Regelmäßige Überwachung bedeutet, dass die Sicherheit deiner Website stark und auf den Schutz ausgerichtet bleibt.
- Du kannst sicherstellen, dass die typischen Industriestandards und Datenschutzrichtlinien konsequent und aktuell eingehalten werden.
- Im Kern kannst du das Risiko verringern, dass Daten von deiner Website „durchsickern“ und deinen Ruf schädigen.
Für WordPress-Websites ist deine Überwachungs- und Compliance-Strategie sogar noch wichtiger und anspruchsvoller:
- WordPress bietet zwar eine inhärente Sicherheit, aber die Plattform hat dank ihres Marktanteils eine Zielscheibe auf dem Rücken.
- Hinzu kommt die Komplexität des Theme- und Plugin-Ökosystems, das du ebenfalls überwachen musst.
- Wenn du mehrere Websites betreibst, musst du sicherstellen, dass eine konsistente und zuverlässige Überwachungsstrategie vorhanden ist.
- Du solltest die Sicherheitsüberwachung nahtlos in bestehende Entwicklungsabläufe integrieren.
Die gute Nachricht ist, dass du die Sicherheitsüberwachung problemlos in deinen bestehenden Arbeitsablauf integrieren und mit WordPress-Update-Benachrichtigungen kombinieren kannst. Noch besser ist, dass du dies über die Kinsta-API steuern kannst.
Eine kurze Einführung in die Kinsta-API
Für Kinsta-Kunden ist die API die beste Möglichkeit, viele Aspekte deines Hosting-Servers zu automatisieren und zu nutzen. Wir bieten eine Vielzahl von Endpunkten für alle möglichen Aufgaben. So kannst du zum Beispiel Websites, Benutzer und Abhängigkeiten wie Website-Themes und Plugins verwalten. Außerdem kannst du über das MyKinsta-Dashboard Logs abrufen und auf die gleichen Anwendungsmetriken zugreifen:
Natürlich ist es ein Kinderspiel, die Kinsta-API in deinen WordPress-Workflow zu integrieren, denn unser Schwerpunkt liegt auf dem WordPress-Hosting. Wie du das machst, erfährst du später. Wir bieten einen proaktiven und programmatischen Weg, um deine Sicherheitsüberwachung für die wichtigsten WordPress-Facetten zu übernehmen. Dazu gehören Website-Updates, Logging und vieles mehr.
Vieles davon deckt sich mit dem, worauf du dich konzentrieren solltest, wenn es um die Sicherheit von WordPress geht. Schauen wir uns das als Nächstes an.
Typische Praktiken für Sicherheit und Compliance in WordPress
Im Kern ist WordPress eine starke und sichere Plattform, dank seiner ausgereiften Codebasis und der strikten Einhaltung von Sicherheitspraktiken. Für das Content Management System (CMS) selbst gibt es offizielle Wege, um Schwachstellen zu melden:
- Das WordPress Core Security Team.
- Eine direkte E-Mail-Adresse, um Schwachstellen in Plugins zu melden.
- Eine separate E-Mail-Adresse für Sicherheitslücken in Themes.
Es gibt sogar eine Möglichkeit für Endnutzer, Themes zu melden – ein auffälliger Button auf der Repository-Seite:
Es ist klar, dass WordPress sehr auf Sicherheit bedacht ist, und es gibt ein paar wichtige Bereiche, auf die sich die Codebasis konzentriert:
- Regelmäßige Updates. WordPress veröffentlicht regelmäßig Updates für seine Kernsoftware, die Patches zur Behebung von Sicherheits- und Leistungsproblemen enthalten. Es gibt automatische Möglichkeiten, den Kern, Themes und Plugins über das WordPress-Dashboard zu aktualisieren
- Starke Zugangskontrollen. WordPress wird mit einer Reihe von Benutzerrollen ausgeliefert, mit denen du verschiedenen Benutzern bestimmte Zugriffskontrollen zuweisen kannst. Außerdem gibt es ein eingebautes Tool zur Überprüfung von Passwörtern und Kontrollen für die Erstellung und Verwaltung von Kommentaren.
- Gewährleistung der Hosting-Sicherheit. In der WordPress-Dokumentation gibt es viele Hinweise auf sicheres Hosting. Es wird erwartet, dass dein Hoster die gleiche Sorgfaltspflicht für deine Sicherheit hat wie sein Kernteam für das CMS.
Um einige dieser Aspekte zu überwachen, kannst du den Bildschirm Site Health in deinem WordPress-Dashboard nutzen:
Wenn es um die Einhaltung von Vorschriften geht, bietet WordPress eine Standardvorlage für Datenschutzrichtlinien für jede Installation. Die Kernplattform unterstützt auch die Verwendung von Formularen zur Offenlegung von Sicherheitslücken. Wenn du mit der Kinsta-API darauf aufbaust, erhältst du robuste Sicherheitsvorkehrungen – und wir zeigen dir, wie das geht.
Wie du die Sicherheitsüberwachung mit der Kinsta-API implementierst
Wenn du eine Einrichtung erreichen willst, die eine kontinuierliche Sicherheitsüberwachung beinhaltet, ist ein programmatischer Ansatz wohl die beste Vorgehensweise. Die Kinsta-API bietet viele verschiedene Endpunkte, die dir dabei helfen können, aber sie ist nicht der einzige Ansatz (dazu später mehr).
Lass uns einen typischen Ansatz für die Sicherheitsüberwachung mithilfe der API durchgehen. Wir beginnen mit dem Abrufen deiner API-Schlüssel und gehen dann zu den anderen Bereichen über.
1. Bekomme deine API-Anmeldedaten
Ohne deine API-Schlüssel kannst du auf keinen Aspekt deiner Websites zugreifen. Um einen neuen API-Schlüssel zu erstellen, gehst du zum MyKinsta-Dashboard und zum Bildschirm Unternehmenseinstellungen > API-Schlüssel. Wenn du das erste Mal hier bist, ist der Bildschirm wahrscheinlich leer:
Hier klickst du auf die Schaltfläche API-Schlüssel generieren und füllst die Felder aus, um ein Ablaufdatum und einen Namen für deinen Schlüssel festzulegen:
Sobald du auf die Schaltfläche Generieren klickst, kannst du deinen API-Schlüssel kopieren. Denke daran, dass du ihn nie wieder sehen wirst, also bewahre ihn sicher auf:
Wenn du deinen neuen API-Schlüssel hast, kannst du dich mit der Kinsta-API verbinden.
2. Erforsche die verfügbaren Endpunkte der Kinsta-API
Wir empfehlen dir, die API-Dokumentation zur Hand zu nehmen, während du dich durch die verfügbaren Endpunkte bewegst. Nicht alle sind für die Sicherheitsüberwachung geeignet, aber es gibt einige, auf die du dich mehr stützen wirst als auf andere:
sites
. Verwende diesen Endpunkt, wenn du eine Liste von Websites abrufen willst, die mit einem Unternehmen verbunden sind. Du kannst grundlegende Informationen wie Name, ID und Status abrufen.backups
. Mit den AbfragenGET
undPOST
kannst du Sicherungskopien für jeden deiner Website erstellen und wiederherstellen. Dies ist ein Teil deiner Disaster Recovery und der Reaktion auf Sicherheitsvorfälle.logs
. Dieser Endpunkt kann für einfache Fehler- und Zugriffsprotokolle verwendet werden. Er wird einer deiner bevorzugten Endpunkte für Überwachungs- und Debugging-Zwecke sein.
Im nächsten Abschnitt stellen wir dir weitere Endpunkte vor, mit denen du deinen Prozess ausbauen kannst.
3. Überprüfe deine Verbindung und rufe eine Liste von Websites ab
Bevor du auch nur eine Zeile Code schreibst, solltest du im Voraus planen, um deine Ziele festzulegen. Sieh dir an, welche Endpunkte es gibt, kombiniere sie mit den Vorstellungen, die du von deinem Sicherheitsüberwachungsprozess hast, und versuche dann, alles aufeinander abzustimmen.
Du möchtest zum Beispiel regelmäßig nach veralteten WordPress-Cores, Themes und Plugins suchen. Der Endpunkt sites
ist der richtige Weg, um dies zu tun. Allerdings wirst du nicht einfach auf einen Endpunkt zugreifen oder eine Anfrage nach der anderen stellen. Hier kommt die Flexibilität der Kinsta-API zum Tragen.
Hier ist ein schnelles Python-Skript, um den Zugriff auf die API zu authentifizieren und eine Website abzurufen. Zuerst setzen wir einige Kernvariablen. Beachte, dass du normalerweise deinen API-Schlüssel und deine Unternehmens-ID nicht in deinen Code einfügst. In diesem Fall tun wir das aus Gründen der Kürze und Übersichtlichkeit.
Sobald wir die Variablen gesetzt haben, können wir die Authentifizierungs-Header setzen und den Zugriff validieren. Mit drei kurzen Funktionen können wir das Token validieren, eine Liste von Websites zurückgeben und eine bestimmte Website abrufen:
import requests
import os
# Define the API key and company ID within the script
api_token = 'API_KEY'
company_id = 'COMPANY_ID'
# Set the base URL for the Kinsta API
base_url = 'https://api.kinsta.com/v2'
# Set the headers for authentication
headers = {
'Authorization': f'Bearer {api_token}'
}
def validate_token():
"""Checks and authenticates an API token."""
url = f'{base_url}/validate'
response = requests.get(url, headers=headers)
if response.status_code == 200:
print('API token is valid')
else:
print('API token is invalid')
exit(1)
def get_sites():
"""Fetches a list of sites based on the Company ID."""
url = f'{base_url}/sites?company={company_id}'
response = requests.get(url, headers=headers)
if response.status_code == 200:
data = response.json()
company_data = data.get('company', {})
sites = company_data.get('sites', [])
return sites
else:
print(f'Failed to fetch sites. Status code: {response.status_code}')
return None
def get_single_site(site_id):
"""Takes a URL template and response, checks the status code, and returns JSON data if present."""
url = f'{base_url}/sites/{site_id}'
response = requests.get(url, headers=headers)
if response.status_code == 200:
site = response.json()
return site
else:
print(f'Failed to fetch site. Status code: {response.status_code}')
return None
Die Funktion main
ruft jeden dieser anderen Prozesse auf und verwendet eine Logik, um die Website-Informationen an eine Reihe von Umgebungsvariablen zu senden:
def main():
validate_token()
sites = get_sites()
if sites:
print(f'Number of sites: {len(sites)}')
if len(sites) > 0:
for site in sites:
print(f'Site ID: {site["id"]}')
print(f'Site Name: {site["name"]}')
print(f'Site Display Name: {site["display_name"]}')
print(f'Site Status: {site["status"]}')
print('Site Labels:', site["site_labels"])
print('---')
# Store site details in environment variables
os.environ[f'SITE_ID_{site["name"]}'] = site["id"]
os.environ[f'SITE_NAME_{site["name"]}'] = site["name"]
os.environ[f'SITE_DISPLAY_NAME_{site["name"]}'] = site["display_name"]
os.environ[f'SITE_STATUS_{site["name"]}'] = site["status"]
os.environ[f'SITE_LABELS_{site["name"]}'] = str(site["site_labels"])
print('Site details stored in environment variables.')
else:
print('No sites found')
else:
print('Failed to fetch sites')
Wenn der Zugriff auf deine Websites vollständig ist, kannst du andere Endpunkte für bestimmte Anwendungsfälle einbinden.
4. Kombiniere Endpunkte für eine kontinuierliche Sicherheitsüberwachung
Es gibt viele verschiedene Möglichkeiten, die Kinsta-API-Endpunkte für eine kontinuierliche und automatisierte Überwachung zu nutzen. Das regelmäßige Abrufen von Fehlerprotokollen ist eine hervorragende Möglichkeit, die Sicherheit deiner Website proaktiv zu überwachen.
Wir können mit demselben Authentifizierungs- und Abrufverfahren wie im vorherigen Schritt beginnen. Sobald du die Website hast, die du brauchst, kann eine kurze Funktion auf die API zugreifen und die Fehlerprotokolle zurückgeben:
def get_error_logs():
"""Fetches error logs up to 1,000 lines."""
url = f'{base_url}/sites/environments/{company_id}/logs?file_name=error&lines=1000'
response = requests.get(url, headers=headers)
if response.status_code == 200:
logs = response.json()
return logs
else:
print(f'Failed to fetch error logs. Status code: {response.status_code}')
return None
Wenn du das automatisieren willst, solltest du ein Paket oder eine Bibliothek finden, die dir dabei hilft. In Python gibt es zum Beispiel das Paket schedule
, das in festen Abständen eine Aufgabe ausführt. Um dies zu implementieren, können wir eine weitere Funktion erstellen, die Protokolle ausgibt, und diese dann mit schedule
in main
aufrufen:
def fetch_and_print_logs():
"""Checks for error logs, and if present, prints them to screen."""
logs = get_error_logs()
if logs:
print('Error Logs:')
for log in logs:
print(log)
print('---')
# Schedule the log fetching task to run once a day at a specific time
schedule.every().day.at('09:00').do(fetch_and_print_logs)
#main.py
…
while True:
schedule.run_pending()
time.sleep(1)
Natürlich kannst du diese Funktion auf jeden beliebigen Endpunkt ausweiten, zum Beispiel auf backups
. Mit etwas Arbeit könntest du auch ein komplettes System zum automatisierten und kontinuierlichen Sperren von IP-Adressen für deine Website aufbauen – du hast viel Spielraum!
Nutzung der Kinsta-API in Verbindung mit anderen WordPress-Plugins
Das Hosting von Kinsta baut die Sicherheit in das MyKinsta-Dashboard und seine tiefere Architektur ein. Aus diesem Grund können die meisten Sicherheits-Plugins nicht installiert werden. Um das gleiche Maß an Funktionalität zu erreichen, musst du normalerweise die Tools von Kinsta verwenden, z. B. die IP-Sperre.
Die Kinsta-API bietet zwar eine einfache Möglichkeit, Berührungspunkte für die Sicherheitsüberwachung und -automatisierung bereitzustellen, aber es gibt auch die Möglichkeit, sie mit einigen ausgewählten Plugins zu verknüpfen. Wir lassen dich zum Beispiel nicht die Traffic-Protokollierung aktivieren (da sie hohe IOPS-Werte verursacht), aber der Rest des Wordfence-Plugins kann von Nutzen sein.
Wordfence bietet sogar einige eigene Endpunkte für die IP-Freigabe und den Import von Einstellungen an. Letzteres könnte interessant sein, wenn du bekannte „gute“ Einstellungen auf vielen verschiedenen Websites replizieren möchtest. Die Wordfence CLI bietet jedoch viel mehr Möglichkeiten zur Kombination mit unserer API.
Beides zusammen zu nutzen, würde den Rahmen dieses Beitrags sprengen, aber es ist denkbar, einen Kindprozess mit Node.js zu erzeugen, um Python-Skripte auszuführen, um nur ein Beispiel zu nennen.
Das bedeutet, dass du die Funktionen von Wordfence zusammen mit denen von Kinsta programmatisch ausführen und automatisieren kannst. Das Sucuri Security Plugin verfügt außerdem über eine einfache API, mit der du einen Website-Scan durchführen kannst.
Du kannst Plugins natürlich auch auf eine einfachere Art und Weise nutzen. WP Activity Log zum Beispiel erweitert die Protokollierungsfunktion von Kinsta. Damit kannst du fast jede Aktion auf deiner Website aufzeichnen, auch für Plugins von Drittanbietern.
Wenn du die Kinsta-API in die Plugins auf deiner Website integrieren willst, brauchst du normalerweise einen API-Zugang zum Plugin. Nicht alle Plugins bieten dies jedoch an, so dass du bei deinen Lieblingsplugins möglicherweise Einschränkungen hast.
Einhaltung von Compliance-Standards mit WordPress und Kinsta
Als Unternehmen, das seine Kontrollen, Teilprozesse und Compliance vorzeigt, weiß Kinsta viel über die damit verbundene Arbeit. Wenn es um die Einhaltung von Standards geht, erfüllen wir die Standards für SOC 2 Typ 2, die GDPR und die CCPA.
Um das Vertrauen der Nutzer zu stärken, sollte auch deine Website diese Standards erfüllen. Die GDPR war die erste, die fast alle Websites betraf. Diese Verordnung der Europäischen Union (EU) legt Richtlinien fest, wie du personenbezogene Daten erhebst, verarbeitest und speicherst. Die CCPA ist ein weiteres Gesetz, das in eine ähnliche Richtung geht. Bei WordPress-Websites können die integrierte Seite mit den Datenschutzrichtlinien und die Datenexport-Tools helfen, ebenso wie die Implementierung von Cookie-Hinweisen.
Wenn du im Finanzwesen, im Gesundheitswesen oder in ähnlichen Bereichen arbeitest, musst du dich an andere Gesetze, Normen, Richtlinien und Verordnungen halten:
- Der Health Insurance Portability and Accountability Act (HIPAA) legt Standards für den Schutz sensibler Gesundheitsdaten von Patienten fest. Die Zugriffskontrollen und Benutzerauthentifizierungsfunktionen von WordPress können hier helfen, ebenso wie die Implementierung einer SSL-Verschlüsselung für deine Websites.
- Der Payment Card Industry Data Security Standard (PCI-DSS) ist eine Reihe von Sicherheitsstandards für Websites, die Kartentransaktionen verarbeiten. WordPress-eCommerce-Websites müssen die PCI-DSS-Anforderungen erfüllen. Wie beim HIPAA sind verschlüsselte Verbindungen für deine Website wichtig. Auch die Verwendung von Zwei-Faktor-Authentifizierung (2FA), Firewalls und Zahlungsgateways von Drittanbietern helfen dir, die Anforderungen zu erfüllen.
Die Infrastruktur von Kinsta kann ein solides Fundament für deine gesamte Compliance-Strategie sein, und die Kinsta-API kann auch mit der von WordPress kombiniert werden. Vielleicht möchtest du dich sogar mit Tools, Diensten und Plugins von Drittanbietern zur Überwachung der Dateiintegrität befassen.
Optimale Tipps für die Nutzung der Kinsta-API und WordPress für Sicherheit und Compliance
Zum Abschluss dieses Beitrags geben wir dir noch ein paar allgemeine Tipps für die Nutzung der Kinsta-API zusammen mit WordPress. Wenn es um die Sicherheit und die Einhaltung von Vorschriften auf deiner Website geht, ist es wichtig, die Effektivität beider Systeme zu maximieren, damit du den größten Nutzen daraus ziehen kannst.
Ein einfacher Ansatz ist die Verwendung des Endpunkts „Authentifizierung“, um zu prüfen, ob dein API-Schlüssel gültig ist:
const resp = await fetch(
`https://api.kinsta.com/v2/validate`,
{
method: 'GET',
headers: {
Authorization: 'Bearer <API_KEY>'
}
}
);
const data = await resp.text();
console.log(data);
Außerdem solltest du deine API-Zugangsdaten immer vertraulich behandeln, vor allem wenn du deinen Code in einem remoten Git Repo speicherst. Am besten speicherst du diese Schlüssel außerhalb der Webroot und verwendest eine der folgenden Methoden:
- Umgebungsvariablen sollten an erster Stelle stehen, und wir empfehlen diesen Ansatz.
- Wrapper, wenn du PHP verwendest.
- Git-Befehle, um den Zugriff auf Repos und Dateien zu beschränken und sensible Informationen zu verschleiern. Zum Beispiel
git crypt
,git-remote-gcrypt
, odergit secret
.
Neben dem Schutz deiner API-Schlüssel gibt es jedoch noch viele andere Möglichkeiten, um die Nutzung der Kinsta-API und von WordPress sicherer zu machen:
- Eine angemessene Fehlerbehandlung und -protokollierung kann dir helfen, Probleme zu erkennen und zu beheben, und die Zuverlässigkeit und Stabilität deiner Sicherheitsüberwachung erhöhen.
- Verwende das Prinzip der geringsten Rechte bei der Zuweisung von Benutzerrollen und Berechtigungen. Das heißt, dass du den Nutzern nur so viel Zugriff gewährst, wie sie für die Ausführung ihrer Aufgaben benötigen. Überprüfe diese Berechtigungen außerdem in regelmäßigen Abständen.
Vor allem solltest du dich über die aktuellen Sicherheitspraktiken auf dem Laufenden halten und die besten anwenden. Informiere dich auch über die neuesten Sicherheitslücken und die Software-Patches, die sie für deine Themes und Plugins beheben. Mit regelmäßigen Aktualisierungen, automatisierter Sicherheitsüberwachung und der Einhaltung der Kinsta-API hast du ein stabiles System eingerichtet.
Zusammenfassung
Wir bei Kinsta sind stolz darauf, dir einen starken, stabilen und sicheren Hosting-Server zu bieten. Du musst aber auch dafür sorgen, dass die Sicherheit deiner Website überwacht wird. Ein kontinuierliches Sicherheitsmonitoring für alle deine WordPress-Seiten ist unerlässlich.
Mit der Kinsta-API hast du viele programmatische Möglichkeiten, um deine Ziele zu unterstützen, z. B. den Zugriff auf Logs, die Verwaltung einer IP-Blockierliste und mehr. Einige WordPress-Plugins, die einen API-Zugang bieten, ermöglichen es dir, viel mehr zu automatisieren als nur deinen Server. Wenn du diese Sicherheits- und Compliance-Aufgaben automatisierst, kannst du dich auf andere geschäftskritische Bereiche konzentrieren und hast die Gewissheit, dass deine Website und ihre Nutzer sicher sind.
Was brauchst du für deine kontinuierliche Sicherheitsüberwachung, die Kinsta dir bieten kann? Lass es uns in den Kommentaren unten wissen!
Schreibe einen Kommentar