SSL-certifikat “havererar” inte tydligt förrän de redan skadar dig. En dag går en kund in på din webbplats, ser en stor varning i webbläsaren och plötsligt hanterar du panik, tappat förtroende och jobbiga mejltrådar.
Det här är den typen av röra som marknadschefer märker först (för att leads droppar), men driftsansvariga och små byråägare får sitta kvar och städa upp. Med automation för påminnelser om SSL-utgång samlar du alla domäner i ett Google Sheet och får en mejlvarning innan något löper ut.
Nedan ser du hur workflowet körs veckovis, kontrollerar varje webbplats certifikat, uppdaterar ditt kalkylark och bara mejlar dig när något behöver åtgärdas.
Så fungerar den här automationen
Se hur det här löser problemet:
n8n Workflow Template: Google Sheets till e-post, pålitliga SSL-varningar
flowchart LR
subgraph sg0["Trigger Every Monday Flow"]
direction LR
n0["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/httprequest.dark.svg' width='40' height='40' /></div><br/>Get SSL"]
n1@{ icon: "mdi:swap-vertical", form: "rounded", label: "Loop", pos: "b", h: 48 }
n2@{ icon: "mdi:database", form: "rounded", label: "Update SSL in Spreadsheet", pos: "b", h: 48 }
n3@{ icon: "mdi:play-circle", form: "rounded", label: "Trigger Every Monday", pos: "b", h: 48 }
n4@{ icon: "mdi:swap-horizontal", form: "rounded", label: "SSL Not Good?", pos: "b", h: 48 }
n5@{ icon: "mdi:database", form: "rounded", label: "Get Website List", pos: "b", h: 48 }
n6["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/code.svg' width='40' height='40' /></div><br/>Code"]
n7@{ icon: "mdi:message-outline", form: "rounded", label: "Send Email Alert", pos: "b", h: 48 }
n6 --> n4
n1 --> n6
n1 --> n0
n0 --> n2
n4 --> n7
n5 --> n1
n3 --> n5
n2 --> n1
end
%% Styling
classDef trigger fill:#e8f5e9,stroke:#388e3c,stroke-width:2px
classDef ai fill:#e3f2fd,stroke:#1976d2,stroke-width:2px
classDef aiModel fill:#e8eaf6,stroke:#3f51b5,stroke-width:2px
classDef decision fill:#fff8e1,stroke:#f9a825,stroke-width:2px
classDef database fill:#fce4ec,stroke:#c2185b,stroke-width:2px
classDef api fill:#fff3e0,stroke:#e65100,stroke-width:2px
classDef code fill:#f3e5f5,stroke:#7b1fa2,stroke-width:2px
classDef disabled stroke-dasharray: 5 5,opacity: 0.5
class n3 trigger
class n4 decision
class n2,n5 database
class n0 api
class n6 code
classDef customIcon fill:none,stroke:none
class n0,n6 customIcon
Utmaningen: SSL-utgångar faller mellan stolarna
Att hålla koll på SSL-förnyelser låter enkelt tills du har fler än ett par webbplatser. Domäner flyttas mellan webbhotell, någon slår “tillfälligt” på automatisk förnyelse, en konsult byter certifikat och enda dokumentationen är en halvt uppdaterad flik i ett kalkylark från förra kvartalet. Sedan kommer det fruktade meddelandet: “Är sajten nere?” Oftast är den inte helt nere, men webbläsarvarningar är brutala. Folk lämnar, formulär fylls inte i och teamet stressar för att lista ut vad som ändrats, var certifikatet ligger och vem som har åtkomst.
Det drar snabbt iväg. Här är var det faller sönder i verkligheten.
- Manuella kontroller över en lista domäner blir en återkommande kalenderuppgift som ändå hoppas över när veckorna blir intensiva.
- Ditt kalkylark som “källa till sanningen” blir inaktuellt eftersom ingen vill uppdatera utfärdat-/utgångsdatum för hand.
- Du får oftast veta det för sent, när kunder ser varningar eller en partner påpekar det under ett samtal.
- Även när du upptäcker det tappar du tid på att avgöra vilka certifikat som är akuta kontra “någon gång nästa månad”.
Lösningen: SSL-övervakning styrd av Google Sheets med mejlvarningar
Det här workflowet gör ditt Google Sheet till en aktiv övervakningslista i stället för ett passivt dokument. Varje måndag morgon (som standard) läser n8n varje rad, hämtar webbplatsens URL och kontrollerar aktuellt SSL-certifikat via en enkel HTTP-förfrågan till ssl-checker.io. Under tiden skriver den tillbaka “Issued On”, “Expired On” och en tydlig status i kalkylarket, så att datan hålls uppdaterad utan att någon behöver röra den. Sedan utvärderar en liten logik vilka certifikat som löper ut inom de kommande 14 dagarna. Om inget är brådskande är den tyst. Om något är det får du ett enda mejl som listar domänerna som snart behöver förnyas.
Workflowet startar enligt ett schema, loopar igenom ditt ark i batchar och kontrollerar varje webbplats certifikatdetaljer. Efter att ha uppdaterat arket filtrerar det ner till bara de riskfyllda och skickar en varningsmejl när det faktiskt spelar roll.
Vad som förändras: före vs. efter
| Detta elimineras | Effekten du ser |
|---|---|
|
|
Effekt i verkligheten
Säg att du hanterar 25 domäner för kundsajter och interna verktyg. En “snabb” manuell kontroll tar oftast runt 5 minuter per webbplats när du öppnar en checker, bekräftar hostname och noterar utgångsdatum, vilket blir ungefär 2 timmar varje vecka när du gör det ordentligt. Med det här workflowet lägger du cirka 10 minuter en gång för att säkerställa att Google Sheet-länkarna är korrekta, sedan uppdaterar måndagskörningen allt åt dig. Du får bara ett mejl när något är inom 14 dagar från att löpa ut, så din tid går till förnyelser, inte till att jaga information.
Krav
- n8n-instans (prova n8n Cloud gratis)
- Alternativ för egen hosting om du föredrar det (Hostinger fungerar bra)
- Google Sheets för att lagra domäner och resultat.
- E-postkonto (SMTP eller Gmail) för att skicka varningsmeddelanden.
- ssl-checker.io-endpoint (ingen nyckel behövs för grundkontroller).
Kunskapsnivå: Nybörjare. Du kopplar Google Sheets och e-postuppgifter och matchar sedan dina kolumner i arket.
Behöver du hjälp att implementera detta? Prata med en automationsexpert (gratis 15-minuters konsultation).
Workflow-flödet
Ett veckoschema sätter igång allt. Som standard kör det på måndagar 07:00, så du startar veckan med överblick i stället för överraskningar.
Ditt Google Sheet är övervakningslistan. n8n hämtar alla rader, läser webbplatsens URL från kolumnen “Link” och matar in dessa sajter i en batch-loop så att stora listor inte time:ar ut.
Varje webbplats kontrolleras och skrivs tillbaka till arket. En HTTP-förfrågan anropar ssl-checker.io för certifikatdatum, och sedan uppdaterar workflowet “Issued On”, “Expired On” och ett statusfält i Google Sheets.
Bara verkligen brådskande domäner triggar ett mejl. En enkel tröskelregel flaggar allt som löper ut inom 14 dagar, och ett If-villkor skickar ett konsoliderat meddelande via din e-postnod.
Du kan enkelt ändra 14-dagarströskeln till 30 dagar beroende på din förnyelseprocess. Se den fullständiga implementeringsguiden nedan för anpassningsalternativ.
Steg-för-steg-guide för implementering
Steg 1: konfigurera Schedule Trigger
Det här arbetsflödet körs varje vecka för att kontrollera SSL-utgångsdatum för alla webbplatser som listas i ert kalkylark.
- Lägg till och öppna Weekly Schedule Trigger.
- Ställ in schemaregeln så att den triggar veckovis på måndag kl. 07:00 med den befintliga intervallkonfigurationen.
- Koppla Weekly Schedule Trigger till Retrieve Site List.
Steg 2: anslut Google Sheets
Dessa noder laddar in webbplatslistan och uppdaterar SSL-data efter varje kontroll.
- Öppna Retrieve Site List och ställ in Document ID till
[YOUR_ID]. - Ställ in Sheet Name till
List(värdegid=0). - Inloggningsuppgifter krävs: Anslut era googleApi-inloggningsuppgifter i Retrieve Site List.
- Öppna Modify SSL Sheet och bekräfta att Operation är
updateoch att Authentication ärserviceAccount. - Ställ in kolumnmappningarna i Modify SSL Sheet till:
- Name →
{{ $('Retrieve Site List').item.json.Name }} - SSL Issued On →
{{ $json.result.valid_from }} - SSL Expired On →
{{ $json.result.valid_till }}
- Name →
- Inloggningsuppgifter krävs: Anslut era googleApi-inloggningsuppgifter i Modify SSL Sheet.
Steg 3: sätt upp batchhantering och SSL-uppslag
Varje webbplats behandlas i batchar och frågas mot SSL-checker-API:et.
- Öppna Batch Iterator och låt Reset vara satt till
false. - Koppla Retrieve Site List till Batch Iterator.
- Konfigurera Fetch SSL Status med URL satt till
=https://ssl-checker.io/api/v1/check/{{ $json.Link.replace(/^https?:\/\/, "").replace(/\/$/, "") }}. - Säkerställ att Send Headers är aktiverat i Fetch SSL Status.
- Batch Iterator skickar utdata till både Expiry Threshold Logic och Fetch SSL Status parallellt.
- Koppla Fetch SSL Status till Modify SSL Sheet, och Modify SSL Sheet tillbaka till Batch Iterator för att fortsätta iterera.
Steg 4: sätt upp utgångslogik och larmrutning
Arbetsflödet beräknar certifikat som håller på att gå ut och routar larm endast vid behov.
- Öppna Expiry Threshold Logic och behåll JavaScript-logiken som angiven (tröskeln är
14dagar). - Koppla Expiry Threshold Logic till Validate SSL Status.
- I Validate SSL Status, bekräfta att villkoret är satt till String notEquals med Left Value
{{ $json.message }}och Right ValueAll Good. - Koppla Validate SSL Status (true-sökvägen) till Dispatch Email Alert.
Steg 5: konfigurera e-postlarm
E-postlarm skickas endast när certifikat som håller på att gå ut upptäcks.
- Öppna Dispatch Email Alert och ställ in To Email till
[YOUR_EMAIL]. - Ställ in From Email till
[YOUR_EMAIL]. - Ställ in Subject till
⚠️ ALERT!! SSL EXPIRED. - Ställ in Text till
{{ $json.message }}och Email Format tilltext. - Inloggningsuppgifter krävs: Anslut era smtp-inloggningsuppgifter i Dispatch Email Alert.
Steg 6: testa och aktivera ert arbetsflöde
Kör ett manuellt test för att bekräfta SSL-uppslag, arkuppdatering och larmbeteende innan ni slår på schemat.
- Klicka på Execute Workflow och granska data som rör sig från Retrieve Site List via Batch Iterator.
- Verifiera att Fetch SSL Status returnerar värdena valid_from och valid_till och att Modify SSL Sheet uppdaterar arket.
- Bekräfta att Expiry Threshold Logic returnerar
All Goodnär inga SSL:er är nära att gå ut, och en lista när de är det. - Säkerställ att Dispatch Email Alert endast skickar när Validate SSL Status utvärderas till true.
- Växla arbetsflödet till Active för att aktivera veckovis övervakning.
Se upp med
- Google Sheets-autentisering kan gå ut eller sakna åtkomst till rätt kalkylark. Om uppdateringar slutar skrivas, kontrollera först vilket Google-konto som är kopplat och delningsbehörigheterna för arket.
- Om du använder Wait-noder eller extern rendering varierar processtiderna. Öka väntetiden om noder längre fram fallerar på tomma svar.
- Standardprompter i AI-noder är generiska. Lägg in er varumärkesröst tidigt, annars kommer du att sitta och redigera output för alltid.
Vanliga frågor
Cirka 30 minuter om ditt ark är klart.
Ja. Du kommer mest att koppla Google Sheets och ditt e-postkonto och sedan mappa rätt kolumner.
Ja. n8n har ett gratis self-hosted-alternativ och en gratis provperiod på n8n Cloud. Cloud-planer startar på 20 USD/månad för högre volymer. Du behöver också ta hänsyn till eventuella begränsningar hos din e-postleverantör och användningen av SSL-kontroll-endpointen, som vanligtvis är gratis för grundläggande övervakning.
Två alternativ: n8n Cloud (hanterat, enklast att komma igång) eller self-hosting på en VPS. För self-hosting är Hostinger VPS prisvärd och hanterar n8n bra. Self-hosting ger dig obegränsade körningar men kräver grundläggande serverhantering.
Börja med kodblocket “Expiry Threshold Logic” och justera 14-dagarsregeln så att den matchar din förnyelsecykel. Om du hellre vill larma andra team byter du steget “Dispatch Email Alert” till Gmail, Slack eller Telegram, men behåller samma Google Sheets-lista. Du kan också ändra schemat så att det körs dagligen under perioder med hög risk, till exempel direkt efter en migrering.
Oftast handlar det om behörigheter: det anslutna Google-kontot har inte åtkomst till arket eller så har kalkylarket flyttats. Återanslut Google Sheets-autentiseringen i n8n och bekräfta att filen är delad med det kontot.
Den hanterar utan problem dussintals domäner i en vanlig veckokörning, och batch-iteratorn hjälper den att skala till hundratals utan att sätta igen. På n8n Cloud är din gräns främst antalet månatliga körningar i din plan, eftersom varje domänkontroll räknas som arbete som utförs. Om du kör self-hosted finns inget tak för körningar, men dina serverresurser och SSL-kontroll-endpointens rate limits blir flaskhalsen. I praktiken, om du har en jättelista, glesar du ut körningarna eller ökar batchstorleken gradvis tills det är stabilt.
Ofta ja, eftersom det här workflowet behöver loopning, filtrering och uppdatering av rader tillbaka i Google Sheets, inte bara ett enkelt trigger-action-par. n8n gör batching och villkorsstyrda flöden enkla, och self-hosting är en stor fördel om du övervakar många domäner. Zapier och Make kan fortfarande lösa det, men du kan snabbt nå task-gränser när varje domän kräver en HTTP-kontroll plus en uppdatering i arket. Om du redan jobbar i de verktygen och din domänlista är liten fungerar de bra. Prata med en automationsexpert om du är osäker på vad som passar.
När det här väl rullar slutar SSL-förnyelser att vara en brandövning. Du får korrekt formaterade datum, ett uppdaterat kalkylark och ett mejl bara när det är dags att agera.
Kontakta oss
Hör av dig, så diskuterar vi hur just din verksamhet kan dra nytta av alla fantastiska möjligheter som AI skapar.