• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Was gibt es Schöneres als den Mai draußen in der Natur mit allen Sinnen zu genießen? Lasst uns teilhaben an Euren Erlebnissen und macht mit beim Thema des Monats Da blüht uns was! ---> Klick

[11 Big Sur] /etc/services wird nach Update zurückgesetzt

rootie

Filippas Apfel
Registriert
30.06.11
Beiträge
8.849
Hallo zusammen,

seit (ich glaube) Catalina gibt's ja dieses Feature, dass Dateien in systemrelevanten Verzeichnissen nach einem Update wieder auf den Standard zurückgesetzt werden. Für die /etc/sudoers gibt es ja /etc/sudoers.d/xxx, aber ich habe nichts vergleichbares für /etc/services gefunden.

Hintergrund ist: Ich will einen nicht-standardmäßigen Port für SSH haben. Auf der 22 passieren ja immer die meisten Attacken. Gibt es da eine Möglichkeit, den Port so einzustellen, dass er nach einem macOS-Update nicht wieder auf 22 zurückgesetzt wird? Evtl. weiß unser macOS-Spezialist @Marcel Bresink da Rat.

Wenn die Antwort die ist, dass es einfach nicht geht, dann schreib ich mir einfach ein Batch-Skript, welches ich dann nach dem Update ausführe. Mir geht's nur darum, Unnötiges zu vermeiden :)

Viele Grüße
rootie
 

Marcel Bresink

Hadelner Sommerprinz
Registriert
28.05.04
Beiträge
8.577
Du kannst versuchen, den Services-Eintrag in die lokale Open Directory-Datenbank einzutragen. Die hat standardmäßig eine höhere Suchpriorität als die /etc/services-Datei, sodass man damit Einträge überschreiben kann.

1. Starte das Programm "Verzeichnisdienste" über Spotlight.
2. Gehe auf "Verzeichniseditor" und wähle die Rubrik "Services" im Knoten "/Local/Default".
3. Melde Dich über den Knopf mit dem Schloss als lokaler Administrator an.
4. Füge auf der linken Seite (Eintragsliste) mit dem Knopf "+" einen neuen Eintrag hinzu.
5. Trage bei "RecordName" den Service-Namen ein, also "ssh".
6. Füge auf der rechten Seite ein Attribut "Port" hinzu und gib die gewünschte Portnummer als Wert ein.
7. Füge auf der rechten Seite ein Attribut "Protocols" hinzu und gib das Protokoll "udp" als Wert ein.
8. Erweitere das Attribut "Protocols" zu einer Liste und füge als Wert "tcp" hinzu.
9. Drücke auf "Sichern".

Das habe ich einige Jahre nicht mehr ausprobiert, aber es sollte eigentlich noch funktionieren.
 

rootie

Filippas Apfel
Registriert
30.06.11
Beiträge
8.849
Du kannst versuchen, den Services-Eintrag in die lokale Open Directory-Datenbank einzutragen. Die hat standardmäßig eine höhere Suchpriorität als die /etc/services-Datei, sodass man damit Einträge überschreiben kann.

1. Starte das Programm "Verzeichnisdienste" über Spotlight.
2. Gehe auf "Verzeichniseditor" und wähle die Rubrik "Services" im Knoten "/Local/Default".
3. Melde Dich über den Knopf mit dem Schloss als lokaler Administrator an.
4. Füge auf der linken Seite (Eintragsliste) mit dem Knopf "+" einen neuen Eintrag hinzu.
5. Trage bei "RecordName" den Service-Namen ein, also "ssh".
6. Füge auf der rechten Seite ein Attribut "Port" hinzu und gib die gewünschte Portnummer als Wert ein.
7. Füge auf der rechten Seite ein Attribut "Protocols" hinzu und gib das Protokoll "udp" als Wert ein.
8. Erweitere das Attribut "Protocols" zu einer Liste und füge als Wert "tcp" hinzu.
9. Drücke auf "Sichern".

Das habe ich einige Jahre nicht mehr ausprobiert, aber es sollte eigentlich noch funktionieren.

Servus Marcel,

ich habe Deine Schritte soweit befolgt (ich hoffe, ich habe keinen Fehler gemacht). Ich habe einen Screenshot der Einstellungen angehängt. Ich habe den Mac neu gestartet und anschließend probiert. Leider läuft der sshd (nachdem ich die /etc/services auf den Standard zurückgesetzt habe) auf Port 22.

Also entweder funktioniert das nicht mehr oder ich habe mich in der Tat "verkonfiguriert". Vielleicht kannst Du ja anhand des Screenshots noch etwas erkennen.

Wenn's nicht klappt, dann hilft's auch nicht :)

Viele Grüße
rootie
 

Anhänge

  • Screenshot.png
    Screenshot.png
    66 KB · Aufrufe: 20

Wuchtbrumme

Golden Noble
Registriert
03.05.10
Beiträge
21.522
Nein die /etc/services wird hier nicht bearbeitet, sonst würde es ja funktionieren!

wenn ich Dich richtig verstanden habe, hast Du die services zurückgesetzt, daher kann es sein, dass Du das gar nicht beurteilen kannst. Falsch verstanden? Las sich so.
 

rootie

Filippas Apfel
Registriert
30.06.11
Beiträge
8.849
wenn ich Dich richtig verstanden habe, hast Du die services zurückgesetzt, daher kann es sein, dass Du das gar nicht beurteilen kannst. Falsch verstanden? Las sich so.

Also ich habe zunächst die /etc/services wieder auf den Standard zurückgesetzt (ssh-Port 22). Dann habe ich die Anleitung von @Marcel Bresink befolgt und anschließend den Rechner neu gestartet. Das Ergebnis war: ssh läuft auf Port 22. Ich folgere daraus zwei Sachen: Zum Einen: Die Datei wird nicht überschrieben, sonst wäre mein Port ja da drin und zum Anderen: Der Ansatz klappt anscheinend nicht - außer ich habe etwas falsch gemacht.
 
  • Like
Reaktionen: Wuchtbrumme

Wuchtbrumme

Golden Noble
Registriert
03.05.10
Beiträge
21.522
ah, ok, danke für die Klarstellung, das klingt natürlich sinnvoll.

Der Link, den ich gepostet habe, enthält Marcels Anleitung nicht, obwohl dort 4Wege benannt werden - wasmich mutmassen lässt, dass die paar Jahre, die Marcel das nicht mehr benutzt hat, genau die Jahre umfasst, in denen Apple das geändert oder kaputtgemacht hat. Kannst ja in dem Link nochmal schauen.
 
  • Like
Reaktionen: rootie

rootie

Filippas Apfel
Registriert
30.06.11
Beiträge
8.849
ah, ok, danke für die Klarstellung, das klingt natürlich sinnvoll.

Der Link, den ich gepostet habe, enthält Marcels Anleitung nicht, obwohl dort 4Wege benannt werden - wasmich mutmassen lässt, dass die paar Jahre, die Marcel das nicht mehr benutzt hat, genau die Jahre umfasst, in denen Apple das geändert oder kaputtgemacht hat. Kannst ja in dem Link nochmal schauen.

Ja den link habe ich mir schon angeschaut. Leider ist es bei jeder der Optionen auch wieder eine Art Bastelei. Ich hoffte auf einen noninvasiven Weg, aber den scheint es leider nicht (mehr) zu geben.

Und wenn ich eh basteln muss, dann doch gleich direkt da, wo es auch hingehört
 

Wuchtbrumme

Golden Noble
Registriert
03.05.10
Beiträge
21.522
Und wenn ich eh basteln muss, dann doch gleich direkt da, wo es auch hingehört
äh, ja. Nur ist Apple wahrscheinlich der Meinung, dass man nicht im System herumschrauben soll und schon gar nicht auf dem Level.

Auf jeden Fall halte ich das Ansinnen für Pseudosecurity by obscurity.
 

rootie

Filippas Apfel
Registriert
30.06.11
Beiträge
8.849
äh, ja. Nur ist Apple wahrscheinlich der Meinung, dass man nicht im System herumschrauben soll und schon gar nicht auf dem Level.

Auf jeden Fall halte ich das Ansinnen für Pseudosecurity by obscurity.

Nein das stimmt mal überhaupt nicht. Es ist ein Grundverständnis von Security, den ssh-Port zu ändern, weil damit viele Standard-Malware und Sniffer ausgeschaltet werden. So muss jetzt ein Portscan durchgeführt werden, um rauszufinden, ob ein sshd läuft und wenn ja, ob er unsicher ist.

Hier ein paar Infos: https://linuxhint.com/change_default_ssh_port/

Apple scheint wohl generell nicht zu wollen, dass man ssh aktiviert. Warum auch immer.
 
  • Like
Reaktionen: ottomane

rootie

Filippas Apfel
Registriert
30.06.11
Beiträge
8.849
wenn es das einzige ist, was an Sicherheit gemacht wird, dann stimmt das absolut und zwar genau so, wie ich schrieb.

Ist es ja nicht. Hat ja auch keiner behauptet, oder? Ich habe eine ganze Latte an Sicherheitsmaßnahmen in meinem privaten Netzwerk - sowohl software- als auch hardwaretechnisch.
 
  • Like
Reaktionen: Wuchtbrumme

Wuchtbrumme

Golden Noble
Registriert
03.05.10
Beiträge
21.522
ok, gut! Ich bin mitunter ein wenig verunsichert, man weiss ja auch nicht, wieviel Wissen man voraussetzen darf. Oft kommt nur diese Frage, aber der Port ist per NAT Portforwarding rausgeschaltet und root-Access erlaubt.

Anyway, ich bin vom Nutzen der Massnahme dennoch nicht überzeugt. Besser, es ist von draussen nichts erlaubt, ausser die Einwahl in ein VPN.
 

rootie

Filippas Apfel
Registriert
30.06.11
Beiträge
8.849
ok, gut! Ich bin mitunter ein wenig verunsichert, man weiss ja auch nicht, wieviel Wissen man voraussetzen darf. Oft kommt nur diese Frage, aber der Port ist per NAT Portforwarding rausgeschaltet und root-Access erlaubt.

Anyway, ich bin vom Nutzen der Massnahme dennoch nicht überzeugt. Besser, es ist von draussen nichts erlaubt, ausser die Einwahl in ein VPN.

Ja klar - wenn man keine Ports nach außen hin offen hat, ist das natürlich sicher. Noch sicherer wäre, offline zu gehen

Spaß beiseite. Bei mir ist eben nur ssh offen nach außen, das hat diverse Gründe. Und deswegen will ich natürlich für diese eine „Ausnahme“ einen Port verwenden, den schlecht geschriebene Script-Kiddie-Scripts halt eben nicht finden. Grundsätzlich einfach das machen, was in meiner Macht steht, Angriffe so gut wie möglich zu vermeiden. Deswegen ist es auch wichtig, dass man nie direkt den Root-Access über ssh erlaubt. Das ist standardmäßig aktiv.
 

Wuchtbrumme

Golden Noble
Registriert
03.05.10
Beiträge
21.522
Noch sicherer wäre, offline zu gehen
emoji16.png
ok, ich verstehe Dich - aber Du bist zu progressiv und moderat.
Das einzig richtige ist natürlich, alles auszuschalten und wegzusperren! :)
 
  • Like
Reaktionen: rootie