FullyQualified English GitHub

Hulp en support

De meeste vragen worden hieronder beantwoord. Staat die van jou er niet bij, vraag het dan openlijk: het project leeft op GitHub.

Waar je hulp krijgt

Community

Vragen, bugs en wensen gaan naar GitHub Issues. Zoek eerst even; misschien is het al gevraagd.

Open GitHub Issues

Documentatie

De README beschrijft installeren, instellingen en inloggen. De keuzes achter het product staan in docs/ en docs/adr.

Lees de README

Beveiligingsproblemen

Plaats kwetsbaarheden alsjeblieft niet openbaar. Meld ze privé via een GitHub security advisory.

Privé melden

Gehoste dienst (gepland)

Zodra de gehoste versie live gaat, krijgen betalende klanten e-mailsupport met een antwoord binnen één werkdag. Er is geen telefonische of 24/7-support.

Veelgestelde vragen

Hoe installeer ik FullyQualified?

Draai het met Docker: kloon de repository en voer docker compose up uit, open daarna http://localhost:8080 en maak het eerste account aan. Zonder Docker heb je .NET 10 en een Postgres-database nodig; het commando staat in de README. Databasemigraties worden automatisch uitgevoerd als de app start.

Ik ben mijn passkey kwijt. Hoe kom ik weer binnen?

Vraag een beheerder van je organisatie om op de pagina Gebruikers naast jouw naam op Passkey resetten te klikken. Je krijgt een link voor eenmalig gebruik, 24 uur geldig, om een nieuwe passkey in te stellen; daarbij worden je oude passkeys verwijderd. Ben je de enige beheerder, zie dan de volgende vraag.

Ik ben de enige beheerder en ben mijn passkey kwijt.

Wie de server beheert, kan vanaf de opdrachtregel een herstellink maken. Met Docker: docker compose exec app dotnet FullyQualified.Web.dll recover alice@example.com --url https://fq.example.com. Gebruik je e-mailadres of je naam. De link werkt één keer, 24 uur lang, en vervangt je oude passkeys.

Kan ik inloggen met een wachtwoord?

Nee. Accounts gebruiken passkeys, dus er zijn geen wachtwoorden die kunnen lekken, hergebruikt of gereset worden. Voeg een passkey toe voor elk apparaat dat je gebruikt en houd er minstens twee. Single sign-on via OpenID Connect is beschikbaar als je organisatie een identity provider heeft.

Hoe nodig ik collega's uit, en wat betekenen de rollen?

Beheerders openen de pagina Gebruikers, vullen een e-mailadres in (optioneel) en kiezen een rol. Een lezer bekijkt resultaten en rapporten, een medewerker voegt ook assets toe en verwijdert ze en start scans, en een beheerder beheert ook mensen en alarmen. De uitnodiging is een link voor eenmalig gebruik, 7 dagen geldig, en wordt gemaild als de server een SMTP-host heeft.

Hoe stel ik single sign-on in?

Registreer FullyQualified als applicatie bij je identity provider met de redirect-URI https://jouw-host/auth/sso/signin-oidc en stel op de server Sso:Authority, Sso:ClientId en Sso:ClientSecret in. Zet Sso:AllowedDomains op de e-maildomeinen die mogen inloggen. Mensen hebben nog steeds een uitnodiging nodig, tenzij je Sso:AutoProvision aanzet. Het eerste account maak je altijd met een passkey.

Hoe krijg ik alarmen in Slack, Telegram, PagerDuty of e-mail?

Open als beheerder de pagina Alarmen. Plak een Slack incoming webhook of een generieke webhook-URL (voor PagerDuty of Opsgenie), vul een Telegram-bottoken en chat-ID in, voeg e-mailontvangers toe, kies de laagste status die een alarm moet geven en klik op Testalarm versturen. E-mail heeft ook een SMTP-host op de server nodig. Elke afleverpoging, ook een mislukte, staat op de pagina Log.

Waarom kreeg ik geen alarm?

Controleer of alarmen aanstaan, of de minimumstatus niet hoger is dan het probleem en of er een kanaal is ingesteld. Een eerste resultaat wordt alleen gemeld als het slechter is dan OK. Open daarna de pagina Log: die toont elk controleresultaat en of het alarm is afgeleverd of mislukt, en waarom.

Wat is een tenant?

Een tenant is één organisatie: haar gebruikers, domeinen, resultaten en alarminstellingen. Tenants zien elkaars gegevens niet. De allereerste tenant wordt de beheertenant, en alleen haar beheerders zien alle tenants, maken nieuwe aan en helpen gebruikers in andere tenants. Een zelf gehoste installatie voor één bedrijf heeft gewoon één tenant.

Hoe vaak worden mijn domeinen gescand?

Dat hangt af van je pakket: grotere pakketten worden vaker gecontroleerd. Een pakket zonder eigen interval gebruikt de serverinstelling Scanning:IntervalHours, standaard zes uur, en de platformbeheerder kan voor één tenant een ander interval instellen. Een mislukte controle wordt na vijftien minuten opnieuw geprobeerd. De pagina Organisatie toont het interval dat voor jou geldt.

Hoe controleer ik nu alles?

Medewerkers en beheerders klikken op het dashboard op Alles nu controleren. Elke controle van elke asset gaat meteen in de wachtrij, ongeacht het interval, en de resultaten verschijnen binnen een minuut op de pagina Log. Hoe snel je het opnieuw kunt gebruiken hangt af van je pakket, en de pagina Organisatie toont het. Voor één asset gebruik je Nu scannen op de pagina van die asset.

Hoe test ik mijn instellingen?

Beheerders openen de pagina Organisatie en klikken op Instellingen testen. Dat controleert je pakket en limieten, of de resultaten recent zijn, of alarmen zijn ingesteld, en stuurt een testalarm via elk kanaal; het waarschuwt ook als er maar één beheerder is of beheerders één passkey hebben. De platformbeheerder krijgt ook controles van de server: de beveiligde verbinding, de database, de mailserver, single sign-on en het opzoeken van namen. Er wordt niets gewijzigd.

Waarom staat bij een certificaat Handmatig (waarschijnlijk)?

FullyQualified raadt hoe een certificaat wordt vernieuwd: certificaten van ACME-autoriteiten, of met een heel korte looptijd, zijn vrijwel altijd geautomatiseerd, de rest wordt als handmatig gemarkeerd. Het is een hint om certificaten te vinden die een mens nodig hebben, geen feit over jouw omgeving.

Kan het interne hostnamen controleren?

Een zelf gehoste installatie kan dat, zolang de server ze kan bereiken. De geplande gehoste versie bereikt geen privénetwerken en controleert dus alleen publieke endpoints. Draai voor interne systemen je eigen installatie.

Stuurt FullyQualified mijn gegevens ergens naartoe?

Het stuurt niets naar het project. Om certificaten te vinden vraagt het de Certificate Transparency-zoekdienst crt.sh naar je domeinnamen, en het maakt verbinding met de endpoints en DNS-servers die jij opgeeft. Alarmen gaan alleen naar de kanalen die jij instelt.

Wat gebeurt er als ik een limiet van mijn pakket bereik?

Nog een domein of endpoint toevoegen, of nog iemand uitnodigen, wordt geweigerd met een melding die de limiet noemt; openstaande uitnodigingen tellen mee voor de gebruikerslimiet. Bestaande gegevens blijven werken. Vraag de platformbeheerder om een groter pakket, of verwijder iets. De pagina Organisatie toont je pakket en wat je gebruikt.

Hoe lang wordt historie bewaard?

Zo lang als je pakket zegt, bijvoorbeeld een maand bij Free en twaalf maanden bij Starter. Oudere resultaten, wijzigingen en alarmregels worden automatisch verwijderd, behalve het nieuwste resultaat van elke controle, zodat een asset nooit leeg raakt. Een pakket of afspraak kan alles bewaren. De pagina Organisatie toont jouw periode.

Hoe verwijder ik mijn organisatie?

Een beheerder opent de pagina Organisatie, typt de exacte naam van de organisatie en bevestigt. Alles wordt direct verwijderd: domeinen, resultaten, historie, alarmen en alle gebruikersaccounts, en iedereen wordt uitgelogd. Dit kan niet ongedaan worden gemaakt. De beheertenant van een installatie kan niet worden verwijderd.

Wat doet de gratis check, en wordt er iets opgeslagen?

Je typt op de website een openbare domeinnaam en de checker kijkt naar het TLS-certificaat op poort 443 en naar openbare DNS-records. Er wordt niets opgeslagen. Je adres wordt hooguit een uur in het geheugen bewaard om te beperken hoe vaak één adres kan controleren. Als je FullyQualified zelf draait, staat de openbare checker uit tenzij je PublicScan:Enabled instelt.

Hoe upgrade ik?

Haal de nieuwe versie op en herstart de container. Migraties worden uitgevoerd als de app start, dus maak eerst een back-up van de Postgres-database, zoals bij elke upgrade.