Vraag & Antwoord

OS Linux

Je eigen server op internet.

Anoniem
None
23 antwoorden
  • [quote:c23aadea52="danieldk"][quote:c23aadea52="Marcel de Reus"]
    Wat je ook zou kunnen doen is commando's als rm cp mv etc te chownen naar een user en suid maken. Dan staat een hacker ook raar te kijken.[/quote:c23aadea52]

    Uhuh, lekker zinvol. Wordt het systeem goed voor jezelf bruikbaar :p. Tsjonge, hier wordt toch een horde aan non-maatregelen voorgesteld. Stel je security gewoon *goed* in, en ga niet dit soort quasi-veiligheden aanbrengen, de gemiddelde hacker/cracker doorziet dat in 20 seconden. Hij/zij hoort in de eerste plaats gewoon niet binnen te komen. En als een cracker binnenkomt moet hij gewoon niks kunnen doen (jail, systrace, verified execs, geen lekke binaries, quota(s), immutable of append-only flags op belangrijke bestanden, etc., non-executable mappings, vermindering SUID binaries, etc.).[/quote:c23aadea52]

    Mee eens, het systeem moet natuurlijk wel bruikbaar zijn :)
    Maar goed, hoe zou jij het dan opzetten ? Zonder heel erg veel details te geven, maar gewoon in klare taal. Mijn idee, zoals ik hierboven ergens ook al had gezegt is:

    Installeer een firewall, laat poort 22 ( of misschien een andere nummer om zo de boel om te tuin te leiden ) open. Ik gebruik dan SSH om in te loggen, en laat de ssh deamon alleen maar mensen toe die een valid key pair hebben ( dus je kan niet inloggen met alleen je username/password ) . Op deze manier dacht ik de server dan op afstand te kunnen beheren/configureren.

    De services die ik dan aanbied, laten we als voorbeeld Unreal Tournament nemen, dat is heeft de UDP poorten 7777 - 7788 nodig om te werken. Deze poorten zet ik dan ook open. Ik laat het spel in een user account werken die niets kan behalve dan het spel draaien. Teven zorg ik ervoor dat ik de laatste patches en security gaatjes van het spel heb weggewerkt.

    Dus, dit lijkt me een prima en veilige keuze. Wat denk jij ervan ? Mis ik nu iets essentieels of zit ik goed met deze opzet ?

    trouwens, ik heb de keuze bewust niet op openBSD en netBSD laten vallen omdat ik daar domweg niet genoeg ervaring mee heb. In de toekomst ga ik zeker naar deze Operating Systems kijken aangezien een oud - collega er ook al heel enthousiast overwas, maar dit dus terzijde.
  • [quote:71bc24eb78="yuk"]
    Maar goed, hoe zou jij het dan opzetten ? Zonder heel erg veel details te geven, maar gewoon in klare taal. Mijn idee, zoals ik hierboven ergens ook al had gezegt is:

    Installeer een firewall, laat poort 22 ( of misschien een andere nummer om zo de boel om te tuin te leiden ) open. Ik gebruik dan SSH om in te loggen, en laat de ssh deamon alleen maar mensen toe die een valid key pair hebben ( dus je kan niet inloggen met alleen je username/password ).
    [/quote:71bc24eb78]

    Erg goed idee. En zet root logins uit (log van afstand als gewone gebruiker in en gebruik su of sudo). Als de IP adressen van de mensen die de server gebruiken vast zijn, zou je ook nog alleen de IP adressen van die mensen kunnen toelaten.

    [quote:71bc24eb78]
    De services die ik dan aanbied, laten we als voorbeeld Unreal Tournament nemen, dat is heeft de UDP poorten 7777 - 7788 nodig om te werken. Deze poorten zet ik dan ook open. Ik laat het spel in een user account werken die niets kan behalve dan het spel draaien. Teven zorg ik ervoor dat ik de laatste patches en security gaatjes van het spel heb weggewerkt.
    [/quote:71bc24eb78]

    Hmmm, zelf zou ik er niet zo van overweldigd zijn remote een spel toegankelijk te maken. Een andere optie, die je al eerder noemde is de spelpoorten alleen lokaal toegankelijk te laten zijn, en dan SSH tunneling gebruiken. Mensen kunnen dan met een speciale SSH optie inloggen (-L), vervolgens worden die poorten beschikbaar op localhost, maar in werkelijkheid worden die ports dan over SSH getunnelt naar de server. Ik weet niet hoeveel mensen je naar je server wilt laten connecten, maar als je excessief gebruik gaat maken is het verstandig een crypto accelerator te gebruiken. Het voordeel van zo'n kaartje is dat:

    * Het de processor ontlast, zo'n kaart kan zelf hardwarematig coderen decoderen (zorg wel dat je een kaart hebt die iig AES, RSA en DSA ondersteund).
    * Veel kaarten hebben een random number generator. Als de kernel keys aan moet maken voor de SSH encryptie, dan komen die uit een speciale pool in de kernel waarin random numbers verzameld worden. Als je echter heel erg veel getallen hieruit gaat halen raken ze op, en wordt sshd (afhankelijk van de instellingen) a. geblokt, of b. worden er slechte keys gebruikt (die heel voorspelbaar zijn).

    Maar of je dat gaat doen is afhankelijk van hoeveel SSH je wilt gebruiken. Zo'n kaartje kost tegen de 70 Euro, dus als achteraf blijkt dat de CPU teveel belast wordt met encryptie kun je er altijd nog 1 inpluggen.

    [quote:71bc24eb78]
    trouwens, ik heb de keuze bewust niet op openBSD en netBSD laten vallen omdat ik daar domweg niet genoeg ervaring mee heb.
    [/quote:71bc24eb78]

    Voor veiligheid is het belangrijk dat je kiest waar je zelf ervaring mee hebt.

    [quote:71bc24eb78]
    In de toekomst ga ik zeker naar deze Operating Systems kijken aangezien een oud - collega er ook al heel enthousiast overwas, maar dit dus terzijde.[/quote:71bc24eb78]

    Nice :).
  • Nog een kleine toevoeging: misschien is het de moeite waard om naar grsecurity of systrace (werkt ook op Linux) te kijken. Hiermee kun je de gameservers inperken wat betreft system calls en bestandstoegang. Als er dan onbewust een lek zit in zo'n gameserver kan er weinig schade aangericht worden.

    En het is verstandig quota in te stellen, d.w.z. dat je bijv. elke gebruiker 100MB geeft, daarna laat de kernel gewoon niet toe dat er meer ruimte gebruikt wordt. Mocht de server een keer gehackt worden, dan is het iig niet mogelijk zomaar een schijf op te vullen ;). Overigens heeft reiserfs [b:2eb0dfc7a9]geen[/b:2eb0dfc7a9] goede quota ondersteuning, dus het is verstandiger voor Ext3 of XFS te gaan.

Beantwoord deze vraag

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.