Beiträge von geekmonkey

    Bitte bringe die Regeln in die richtige Reihenfolge ("iptables -nvL"). Das Gewusel mit -A und -I ist unübersichtlich.

    Solltest du eine zustandslose Firewall einsetzen wollen, dann entferne bitte die Regel mit -m state. Connection Tracking (-m state) ohne Connection Tracking (NOTRACK) funktioniert nicht.


    Du musst die eingehenden DNS-Pakete auch annehmen.

    Code
    #Allow inbound DNS replies
    iptables -A INPUT -p udp --sport 53 -j ACCEPT
    iptables -A INPUT -p tcp --sport 53 -j ACCEPT

    Danke für die Antwort. Gebe ich damit nicht den Port 53 für alle frei? Also als public DNS? Ziel der Übung war ja gerade, den Zugang zum DNS auf den VPN zu beschränken.

    Bzw. Verstehe ich den Kommentar mit dem Rumgewusel nicht. Macht es eine großen Unterschied?

    Bzw muss ich mir wohl noch mal genauer mit iptables beschäftigen, die Regeln hier sind eher nen Copy&paste bzw. try&error.

    Was für eine Konfiguration macht auf nem VPS sinn? -m state unterscheide ich, ob die Verbindung neu aufgebaut wird, bereits besteht, etc.... ?

    Hey Leute, ich hatte gestern schon mal bzgl. DNS und iptables gefragt, dabei ging es aber nur um das droppen des Input. Wollte nun aber mal testweise den Server ganz dicht machen, also auch den Output kontrollieren. Config sihet derzeit so aus:

    Spoiler anzeigen

    # Delete all existing rules

    iptables -F

    # Stateless firewall

    iptables -t raw -I PREROUTING -j NOTRACK

    iptables -t raw -I OUTPUT -j NOTRACK

    # Set default chain policies

    iptables -P INPUT DROP

    iptables -P FORWARD DROP

    iptables -P OUTPUT DROP

    # Allow loopback access

    iptables -A INPUT -i lo -j ACCEPT

    iptables -A OUTPUT -o lo -j ACCEPT

    # Allow inbound/outbound SSH

    iptables -A INPUT -p tcp --dport 22448 -j ACCEPT

    iptables -A OUTPUT -p tcp --sport 22448 -j ACCEPT

    iptables -A OUTPUT -p tcp --dport 22448 -j ACCEPT

    iptables -A INPUT -p tcp --sport 22448 -j ACCEPT

    # Allow inbound/outbound HTTP

    iptables -A INPUT -p tcp --dport 80 -j ACCEPT

    iptables -A OUTPUT -p tcp --sport 80 -j ACCEPT

    iptables -A OUTPUT -p tcp --dport 80 -j ACCEPT

    iptables -A INPUT -p tcp --sport 80 -j ACCEPT

    # Allow inbound/outbound HTTPS

    iptables -A INPUT -p tcp --dport 443 -j ACCEPT

    iptables -A OUTPUT -p tcp --sport 443 -j ACCEPT

    iptables -A OUTPUT -p tcp --dport 443 -j ACCEPT

    iptables -A INPUT -p tcp --sport 443 -j ACCEPT

    # Ping from inside to outside

    iptables -A OUTPUT -p icmp --icmp-type echo-request -j ACCEPT

    iptables -A INPUT -p icmp --icmp-type echo-reply -j ACCEPT

    # Ping from outside to inside

    iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT

    iptables -A OUTPUT -p icmp --icmp-type echo-reply -j ACCEPT

    # Allow outbound DNS

    iptables -A OUTPUT -p udp --dport 53 -j ACCEPT

    iptables -A OUTPUT -p tcp --dport 53 -j ACCEPT

    # Allow outbound NTP

    iptables -A OUTPUT -p udp --dport 123 -j ACCEPT

    iptables -A INPUT -p udp --sport 123 -j ACCEPT

    # Allow certain types of ICMP signalling traffic

    iptables -A INPUT -p icmp --icmp-type destination-unreachable -j ACCEPT


    ### VPN Settings ###


    # Allow inbound/outbound OpenVPN

    iptables -A INPUT -p tcp --dport 1194 -j ACCEPT

    iptables -A INPUT -p udp --dport 1194 -j ACCEPT

    iptables -A OUTPUT -p udp --sport 1194 -j ACCEPT

    # Allow everything from within the VPN

    iptables -I INPUT -i tun0 -j ACCEPT

    iptables -I OUTPUT -o tun0 -j ACCEPT

    # TCP/IP to do "three way handshakes":

    iptables -I INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT

    Server läuft, zusätzliche Dienste laufen, VPN läuft, Pi-Hole läuft. Aber egal, ob ich Pi-Hole als DNS intern nutze, oder z.B. den google DNS, ... ich bekomme bei OpenVPN kein DNS Lookup :/

    Droppe ich hingegen nur den Input für den Port 53 und greife per VPN darauf zu,

    Spoiler anzeigen
    Code
    iptables -A
    INPUT -p udp --dport 53 -j DROP
    iptables -A
    INPUT -p tcp --dport 53 -j DROP
    iptables -I INPUT -i tun0 -j ACCEPT
    iptables -I OUTPUT -o tun0 -j ACCEPT
    iptables -I INPUT -m state --state RELATED,ESTABLISHED
    -j ACCEPT


    ... funktioniert alles ohne Probleme. Scheint also irgendwo am gedropten Output zu liegen. Wäre für jede Idee oder Anregung dankbar!

    Hi, als Basic Firewall Regeln nutze ich die hier

    Externer Inhalt gist.github.com
    Inhalte von externen Seiten werden ohne Ihre Zustimmung nicht automatisch geladen und angezeigt.
    Durch die Aktivierung der externen Inhalte erklären Sie sich damit einverstanden, dass personenbezogene Daten an Drittplattformen übermittelt werden. Mehr Informationen dazu haben wir in unserer Datenschutzerklärung zur Verfügung gestellt.

    Spoiler anzeigen

    Nur als Tipp ;)

    Thx Oliver, werde mich da mal durchwühlen.

    Theoretisch muss ich den OUTPUT nicht droppen, oder irre ich? Ich mein ist ja eh nur das, was rausgeht vom Server. Oder macht es Sinn den Output per iptables auch zu spezifizieren? Ist halt etwas nervig, gerade wenn mehr auf dem System läuft.

    Ich habe aber noch eine Frage bzgl. des OUTPUT, wenn ich den ganz droppe, läuft fast nichts mehr, selbst wenn ich den für das tun Interface freigebe :/

    Wie genau sind die Freigaben hierbei zu wählen?

    Würde mich über ne Antwort freuen!

    Weil es mich nicht einschlafen ließ... 10.8.0.0/24 ist doch richtig.

    Sagte ich ja. Haha.

    Aber hier die Lösung, mit der zumindest ich jetzt sehr gut schlafen kann.

    Zumindest was den zugriff nur via vpn angeht.

    Code
    iptables -I INPUT -i tun0 -j ACCEPT
    
    iptables -A INPUT -i tun0 -p tcp --destination-port 53 -j ACCEPT
    iptables -A INPUT -i tun0 -p udp --destination-port 53 -j ACCEPT
    iptables -I INPUT -i lo -j ACCEPT

    in diesem Sinne. Gute Nacht!

    Hay,

    Ist ein bißchen spät, kann sein, dass ich selbst einen Denkfehler mache :sleeping:

    Das VPN / tun-Interface hat doch eine eigene IP-Adresse bzw. ein Netzwerk, je nachdem wie Du das konfiguriert hast (beide Seiten vom VPN!). Das musst Du für die Regel nehmen - localhost macht zwar nichts kaputt, aber auch nicht fürs VPN erreichbar.

    CU, Peter

    Hey, danke für die schnelle Antwort!

    Habs auch schon mit der VPN IP versucht, 10.8.0.0, ... leider ohne Erfolg ?

    Bzw Hab ich irgend einen Denkfehler beim Freigeben nur für den VPN?

    Code
    iptables -A INPUT -p udp --dport 53 -j DROP
    iptables -A INPUT -p tcp --dport 53 -j DROP
    
    iptables -A INPUT -p udp --dport 53 -s 127.0.0.1 -j
    ACCEPT
    iptables -A INPUT -p tcp --dport 53 -s 127.0.0.1 -j
    ACCEPT

    Hey Leute,

    hab vor nen paar Tagen ne vorsorgliche, weitergeleitete Nachricht von abuse@netcup bekommen, ... wegen eines public DNS Servers. Auf einem meiner vServer läuft dnsmasq bzw. Pihole. Ich nutze den DNS nur für meinen privaten Rechner, bzw. für den VPN auf der gleichen IP.

    So nun meine Frage, hat wer nen paar Tipps, wie man den DNS Server gut absichert? Oder evtl. nur für den VPN den Port 53 freigibt und alle anderen IPs blockiert. Je nach Setting läuft hier garnix mehr.

    Hatte den Server zwischenzeitlich ganz dicht und nur die Hand voll Ports die benötigt werden geöffnet, ... aber mit mäßigem Erfolg:



    Bin für alle Vorschläge offen. Danke :)

    von mir gibts auch nen dickes +1!

    Hab hier bei netcup aktuell 20 Domains glaube ich, nutze aber nur eine domain für mails, eben, weil mir eine derartige Funktion fehlt.

    Zum Vergleich, bei Hosteurope hab ich gerade einmal 2 domains und nen mail server laufen, arbeite aber mit ca. 200 Alias für 5 Accounts.

    Kann mir kaum Vorstellen, dass da die Nachfrage nach so gering ist. War für mich eigentlich immer Standard.

    Um wieviel werden die Server denn teurer werden?

    45€ je m^2 ?

    Infos dieser Art wirst du wohl von keinem marktorientierten Unternehmen jemals bekommen.

    Wobei Felix Hinweis, dass die Preise angezogen werden, bzw. aus welchen Gründen, schon echt für die Transparenz des Unternehmens spricht.

    Nein, würde er nicht. Es geht hierbei ja um kleine eigenstandige Systeme. Klar kann ich nen RS splitten in viele kleine Systeme, ... dann habe ich aber den Administrationsaufwand, bzw. wenn der RS crasht sind alle Systeme offline, ...

    Yeapp. Zu 100%. Auch zu empfehlen ist http://seidseit.de/ ^^

    Kann mich in beiden Fällen nur anschließen. Hab nen RS 1000 SSD G7SE NY18, läuft seit Juli letzten Jahres ohne Probleme. Nutze aber auch mehrere vServer bei Netcup, DigitalOcean und Linode zum testen, bevor auf dem root irgendwelche Änderungen live gehen.

    Aktuell reicht die Hardware für mich mehr als aus, außer LEMP + Redis + Node.js läuft da eh nicht viel drauf.

    Wäre, wie an anderer Stelle erwähnt, eh viel mehr an kleinen, günstigeren vServern interessiert, da reichen mir auch 5GB SSD mehr als aus, bzw. 1vCore und 1GB RAM.

    Interessant wären auch mietbare shells, wie früher, vor 18 Jahren oder so, bevor die vServer boomten.

    Die Datenbank ist 2,5GB groß? Enthält nur Pfadangaben und die eigentlichen Bilder belegen 5GB?

    Klingt irgenwie nicht gerade sauber gecoded ?

    ich würde Dir den RS 2000 G7 mit SAS-Platte empfehlen;

    die SAS-Platten sind nicht sooo langsam;

    und 480 GByte reichen doch eine Weile;

    vlt. könnt ich meinen "Oster-Frustkauf" loswerden ... :D

    Osterfrustkauf kannst los werden, kost dich aber 25€ extra, also eher weniger lukrativ.

    Was willst Du denn genau mit dem Server machen?

    Es kann sogar gut sein, dass manche Dinge dann schwerer unter Windows sind, weil es weniger Tutorials dazu gibt, oder man gewisse Sachen erst umständlich compiliern muss (genau umgedreht zum Treiberchaos, das man oft mit Desktoplinux hat ;) ).

    Wenn Du wirklich Windows auf dem Server einsetzen willst, dann verwende ein Serverbetriebssystem und kein Desktop OS wie Windows 10.

    Eigentlich ist Linux nicht mal so schwer, wenn man nicht den Anspruch hat, sofort alles begreifen zu wollen, was da so abläuft, zu beliebten Distributionen wie Ubuntu gibt es unzählige Anleitungen zu allen möglichen Sachen.

    Es gibt auch für Linux diverse grafische Konfigurationstools, z. B. Webmin (wobei ich nicht weiß, ob das noch aktuell ist, verwende ich seit Jahre nicht mehr ;) ).

    Kann man so unterschreiben, gerade Ubuntu bzw. Debian sind auf Grund der klaren Struktur, gut dokumentierten Paket Manager und unzähliger Tutorials wirklich anfängerfreundlich.

    Google spuckt eigentlich zu allen gängigen Topics wirklich gute Ergebnisse aus - wobei Kenntnisse in der englischen Sprache von Vorteil sind.

    Basics zum Absichern und Einrichten von einem Webserver hatte ich mal auf meinem blog, bzw. sogar vor einigen Tagen mal wieder geupdatet.

    https://geekmonkey.de/der-perfekte-server/

    Wenn ich mal wieder Zeit habe, folgen überarbeitete HowTos für Wordpress, Nextcloud etc.

    Bin aber gerade irgendwie aber auf dem oldschool Trip und spiele mit bouncern und eggdrops rum ?

    Bzw. wäre es wirklich toll mal zu erfahren, was du vor hast.

    Doch, ist er. Man kann sehr fein Einstellen was läuft und was nicht und per Default ist die Firewall sehr restriktiv eingestellt.

    Bin zwar auch kein Fan von Windows Servern, aber Firewall und Settings sind schon sehr anfängerfreundlich. Wobei nen Linux System in den meisten Fällen auch für Anfänger wesentlich leichter zu administrieren ist, wenn man mal die Scheu vor Linux verliert.

    Windows 10 hingegen ist echt mal ne Ansage. Ich lach mich schlapp, wenn er direkt nen gecracktes Windows 10 Image aufspielt ?

    Was heißt ich stehe dafür grade?

    D.h. du haftest für alle Schäden, die durch deinen nicht abgesicherten Server entstehen.

    Das können, wie oben bereits angemerkt eben Geldstrafen, Schadensersatzansprüche bis hin zu Haftstrafen sein, ... je nachdem, was die Leute quasi in deinem Namen mit dem Server anstellen.

    Was viele vergessen, ein Server ist kein Spielzeug, ...

    Bin leider neu in Sachen Servern (Linux und co.) Deswegen will ich Windows verwenden ist das einfachste :D

    Sorry, aber tu dir selbst nen Gefallen und teste, wie andere bereits auch schon erwähnt haben, daheim auf ner VM, oder installier dir nen fertiges Linux Image von netcup mit nem passenden webinterface.

    Ich weiß ja nicht, was du mit der Kiste vor hast, aber am Ende haftest du persönlich für allen Schaden, der davon ausgeht.

    Um es mal überspitzt zu sagen, stehst du für alles grade, von Spammails, über DDos Atacks bis hin zu Kinderpornos, die über deinen Server verteilt werden, ...

    Mal ne ganz andere Frage, hab aus Spaß mal wieder nen paar bouncer aufgesetzt. Lese öfters dass manche kunden sich hier im irc rumtreiben, auf welchem server in welchem chan?

    Hab gewohnheitsmäßig mal im qnet und efnet vorbeigeschaut, ... mein Q und S sind weg ? 16 Jahre idlen war den wohl zu lang ??

    so, da ich eh zum Runtersetzen meiner TTL Zeit den Support kontaktiert habe, hab ich direkt mal bzgl vps gefragt.

    Aktuell sind keine kleinen Tarife wie die vps10 -100 geplant :(

    Hab aus Spaß auch mal gefragt, Umschreiben lohnt nicht bei kleinen Tarifen. Kost jeweils 25€, damit sind 1 oder 2€ Specials auch nicht mehr so lukrativ ??

    mainziman Ach, so weit war ich dann gar nicht. Hätte ja sein können, dass du in der reg. Übersicht gesucht hast.

    Hat jemand ne Idee, wie ich es einem Script auf die Schnelle beibringe, in seinem Stammpfad einen Ordner nach dem anderen (ohne Angabe aller Ordnernamen) aufruft und dort alle Dateinamen wiefolgt ändert:

    YYYY-MM-DD_HH-MM-SS_ORDNERNAME.txt

    Den Timestamp würde ich noch extrahiert und umgewandelt kriegen, nur ist es mir ein Rätsel, wie ich es automatisiert schaffe, dass ein Ordner und eine Datei nach der anderen abgearbeitet wird...

    Reden wir über bash? Ordnernamen kannst mit "ls" in einer Variable speichern
    Und dann würde ichs mit ner while/loop machen

    Code
    change_dir=???
    now=$(date +%Y-%d-%m)
    all_dir=$(cd $change_dir && ls)
    
    for dir in $all_dir
        do
           mv $change_dir/dir $change_dir/$(dir).$now
        done

    Oder so ähnlich :D