Gå til innholdetHisnLabs
← macOS-herding, innstilling for innstilling

Leksjon 4 av 5 · 9 min

Tjenester, deling og åpne havner

Slå av delingstjenester du ikke bruker, se hva som faktisk lytter etter tilkoblinger, og slå på applikasjonsbrannmuren.

Hver delingstjeneste du forlater er en liten nettverksserver som kjører på Mac-en din og venter på at noen skal koble seg til den. De fleste slår en på én gang, for én oppgave, og slår den aldri av. Denne leksjonen tar for seg å finne og lukke dem, og deretter legge til en brannmur på toppen som et andre lag.

Delingstjenester

På gjeldende macOS lever delingstjenester i Systeminnstillinger → Generelt → Deling: Fildeling, skjermdeling, ekstern pålogging (SSH), ekstern administrasjon, mediedeling, innholdsbufring, Internett-deling, skriverdeling og noen få andre avhengig av Mac. Hver av dem er av som standard og forblir av til du slår den på av en bestemt årsak, for eksempel å sende en fil til en annen Mac på samme nettverk eller la en hjelper ekstern koble seg til.

  • Hvis du har slått på fildeling én gang for å flytte filer mellom to Mac-er, eller skjermdeling for å få hjelp fra noen, slår du den av igjen fra samme delingsrute når du er ferdig.
  • Ekstern pålogging åpner SSH-tilgang til Mac-en din. Apples egen dokumentasjon for det sier tydelig at "å tillate ekstern pålogging til Mac-en din kan gjøre den mindre sikker." La den være av med mindre du spesifikt trenger å koble til denne Macen fra et annet sted.
  • Hvis flere av disse viser som på og du ikke husker å skru dem på, er det alene verdt å undersøke.

Å se hva som faktisk lytter

Hvis du slår av delingstjenester i Systeminnstillinger, lukkes de som Apple viser en bryter for, men annen programvare (en medieserver, et utviklingsverktøy, en skriverdriver) kan åpne sine egne lytteporter uten å spørre. lsof (liste åpne filer, som på Unix inkluderer nettverkskontakter) kan vise deg hver prosess som for øyeblikket venter på en innkommende TCP-tilkobling:

Terminal
lsof -iTCP -sTCP:LISTEN -n -P
COMMAND     PID   USER   FD   TYPE  DEVICE SIZE/OFF NODE NAME
rapportd   1442 admin   15u  IPv4  ...       0t0  TCP *:64654 (LISTEN)
ControlCe  1775 admin    9u  IPv4  ...       0t0  TCP *:7000 (LISTEN)

Hver linje er én prosess som lytter på én port: kommandonavnet, prosess-IDen, adressen den er bundet til (* betyr hvert nettverksgrensesnitt, 127.0.0.1 betyr kun lokale tilkoblinger), og portnummeret etter kolon. -n og -P forteller lsof å vise rå adresser og portnumre i stedet for å løse dem, noe som er både raskere og klarere. En port som bare er bundet til 127.0.0.1, er kun tilgjengelig fra selve Mac-en; en port bundet til * kan, dersom nettverket tillater det, nås fra andre enheter. Noen oppføringer vil være Apples egne bakgrunnstjenester (som AirDrop/Handoff-hjelperen rapportd, eller kontrollsenterets AirPlay-mottaker); de det er verdt å stille spørsmål ved er apper du installerte som du ikke forventet å høre på i det hele tatt.

Applikasjonsbrannmuren

Applikasjonsbrannmuren, i Systeminnstillinger → Nettverk → Brannmur, er et andre lag på toppen av å lukke ubrukte tjenester: i stedet for å blokkere etter portnummer, bestemmer den per app om den appen i det hele tatt kan akseptere innkommende tilkoblinger. Apple beskriver det som å beskytte Mac-en "fra uønsket kontakt initiert av andre datamaskiner når du er koblet til internett eller et nettverk", mens du fortsatt lar deg tillate bestemte apper eller tjenester.

Apple-støtte: Endre brannmurinnstillinger på Mac.
BrannmuralternativHva den gjør
Blokker alle innkommende tilkoblingerForhindrer innkommende tilkoblinger til ikke-nødvendige tjenester og apper, og etterlater bare grunnleggende tjenester som trengs for at Mac-en skal finne andre datamaskiner på nettverket.
Tillat automatisk signert programvareLar innebygde eller nedlastede apper signert med et gyldig sertifikat motta innkommende tilkoblinger uten å spørre. Å slå av dette betyr flere forespørsler, men færre stille unntak.
Aktiver stealth-modusStopper Mac-en fra å svare på undersøkelsesforespørsler, inkludert ping (ICMP), som ellers kan brukes til å oppdage at den eksisterer på et nettverk.

Du kan sjekke brannmurens nåværende tilstand fra Terminal uten å endre noe:

Terminal
/usr/libexec/ApplicationFirewall/socketfilterfw --getglobalstate
Firewall is enabled. (State = 1)
/usr/libexec/ApplicationFirewall/socketfilterfw --getstealthmode
Firewall stealth mode is off

Å slå på brannmuren og aktivere stealth-modus krever begge et administratorpassord; de skrivebeskyttede --get-kommandoene ovenfor endrer ingenting.

Det viktigste

  • Delingstjenester (fildeling, skjermdeling, ekstern pålogging og andre) lever i Systeminnstillinger → Generelt → Deling, er av som standard, og bør slås av igjen når en spesifikk oppgave er utført.
  • `lsof -iTCP -sTCP:LISTEN -n -P` viser hver prosess som lytter etter innkommende TCP-tilkoblinger, slik at du kan se porter du ikke forventet å være åpne.
  • En port bundet til `127.0.0.1` er kun lokal; en bundet til `*` kan potensielt nås fra nettverket.
  • Applikasjonsbrannmuren kontrollerer innkommende tilkoblinger per app; stealth-modus stopper Mac-en fra å svare på prober som ping.
  • Applikasjonsbrannmuren filtrerer ikke utgående tilkoblinger.

Test deg selv

  1. 1. Hva viser `lsof -iTCP -sTCP:LISTEN -n -P` deg?

    • Hver fil som noen gang er åpnet på Mac
    • Hver prosess lytter for øyeblikket etter innkommende TCP-tilkoblinger, med sin port — Riktig.
    • En liste over blokkerte IP-adresser
    • Macens Wi-Fi-passord

    Denne nøyaktige kombinasjonen av flagg filtrerer `lsof` ned til prosesser med en åpen, lyttende TCP-socket, som viser rå adresser og portnumre.

  2. 2. Hva betyr en lytteport vist som `127.0.0.1:5432`?

    • Den er tilgjengelig fra alle enheter på internett
    • Den er kun tilgjengelig fra selve Mac-en — Riktig.
    • Det er en Bluetooth-tjeneste
    • Den har blitt blokkert av brannmuren

    127.0.0.1 er loopback-adressen: tilkoblinger til den kan bare stamme fra samme maskin.

  3. 3. Hva kontrollerer macOS Application Firewall primært?

    • Utgående tilkoblinger apper gjør til internett
    • Innkommende tilkoblinger til apper og tjenester på Mac — Riktig.
    • Bluetooth-paringsforespørsler
    • Hvilke nettsider kan besøkes

    Applikasjonsbrannmuren bestemmer, per app, om uønskede innkommende tilkoblinger er tillatt; den filtrerer ikke hva apper sender ut.

Prøv det med FireAI

Sett denne leksjonen ut i praksis på din egen Mac.

Kilder

Ta det i bruk på din Mac

Prøv alle funksjonene gratis i 17 dager, uten kort.

Last ned for Mac Dokumentasjon