UFW-appprofil mangler? Den beskriver porter, ikke tjenester
En UFW-appprofil er en navngitt liste over porter og protokoller, ikke en tjeneste. Les app info, sammenlign den faktiske lytteren og behold en vei tilbake før du laster inn på nytt.
UFW sier at det ikke finner en profil som samsvarer med OpenSSH, og jakten på en årsak går rett til SSH-serveren. Det er feil retning: meldingen handler om en navngitt brannmurdefinisjon og sier ingenting om hvorvidt sshd er installert, kjører eller lytter. En UFW-appprofil er en liste over porter og protokoller med en etikett på. Å lese definisjonen tar én kommando og avslutter vanligvis undersøkelsen.
Trinn 1: list opp navnene UFW faktisk kjenner
Spør brannmuren hvilke navn den har før du ber den tillate ett. Listen kommer fra profilene som er installert på denne maskinen, så et manglende navn er et faktum om dette systemet og ikke om programvaren du prøvde å beskytte. Hvis navnet finnes, kom feilen fra en skrivefeil eller et utdatert alias i skallhistorikken din.
ufw app list
ufw app info OpenSSH
Listen er kort ved en standardinstallasjon, og navnene er ikke pakkenavn. En profil kalt OpenSSH kan mangle mens pakken openssh-server er installert, og det motsatte er også mulig. Bruk det nøyaktige navnet listen skriver ut; et VPN-profilnavn eller en skrivebordsstarter med lignende stavemåte er ikke en UFW-appprofil. Hvis navnet du vil ha mangler, er det funnet, og neste trinn er å se på hva som burde levere det.
Trinn 2: les definisjonen, ikke etiketten
En profil er en fil i INI-stil under /etc/ufw/applications.d, med et navn, en tittel, en beskrivelse og et portfelt. Portfeltet kan liste flere porter og transporter, så etiketten forteller mindre enn definisjonen. UFW-håndboken dokumenterer disse feltene og operasjonen for å oppdatere applikasjoner. Les filen i stedet for å anta at navnet betyr én kjent port.
cat /etc/ufw/applications.d/openssh-server
ufw app info OpenSSH
En definisjon som inneholder 22/tcp beskriver TCP-port 22 og ingenting annet. Den beviser ikke at tjenesten på denne maskinen lytter der, og den dekker ikke en annen port du la til senere. Hvis tjenesten kjører et annet sted, er profilen den gale tillatelsen selv om navnet samsvarer med produktet. Sammenlign lytteren med definisjonen før du tillater noen av dem.
ss -ltnp 'sport = :22'
Stopp hvis definisjonen og lytteren ikke stemmer. Å tillate en profil som navngir en port ingen lytter på, lager en regel som ser ut som fremgang og beskytter ingenting.
Trinn 3: skill profilen fra tjenesten som kjører
Å tillate en navngitt profil installerer, starter eller konfigurerer ikke tjenesten, og en tjeneste som kjører trenger ikke en pakket profil for å være tilgjengelig. Det er separate beslutninger som eies av ulike verktøy: pakkebehandleren, tjenestebehandleren og brannmuren. Å behandle dem som én er hvordan folk installerer en uønsket server for å få et symbolsk navn til å dukke opp.
For en VPN-server fortsetter skillet etter at den ytre lytteren er tillatt. Tillatelsen for porten til den krypterte transporten aktiverer ikke videresending i kjernen, legger ikke til en NAT-regel og gir ikke tunnelbrukere tilgang til et LAN. Hver av disse er en egen policy med sin egen gjennomgang. En profil oppkalt etter VPN-produktet beskriver bare portene den lister, og resten av serverkonfigurasjonen er fortsatt din å skrive.
Hvis profilen mangler og du trenger en, er en gjennomgått eksplisitt portregel eller en lokal profil under applications.d begge legitime. Å installere en pakke du ikke ville ha, er det ikke.
Trinn 4: behold en vei tilbake før du laster brannmuren på nytt
Før enhver regelendring, bekreft at du har en annen vei inn i maskinen: en konsoll, en adresse utenfor båndet eller en planlagt tilbakerulling. Les deretter regelsettet og standardpolicyen, fordi en standardavvisning uten SSH-regel er den klassiske måten å låse seg ute på under testing. Endre én regel om gangen og les bekreftelsen UFW skriver ut. En lagret regel, en aktiv regel og en tilgjengelig tjeneste er tre forskjellige observasjoner.
ufw status verbose
ufw allow 22/tcp
ufw app update OpenSSH
Etter endringen, test den tillatte forbindelsen og en vei som fortsatt skal avvises. Avvisningstesten betyr like mye som tillatelsestesten, fordi en regel som er bredere enn tiltenkt består den første testen og feiler på den andre. Noter profilnavnet, portene den inneholdt og lytteren du verifiserte mot.
Sjekklisten slutter når navnet finnes eller er bevisst erstattet, definisjonen samsvarer med den faktiske lytteren, tjenesten administreres separat, og du har testet både en tillatt og en avvist vei med en gjenopprettingsrute i hånden. Et navn på listen er ingen av disse tingene.