Skip to content Gå til innhold


Getting started with iptables in Linux Kom i gang med iptables på Linux

LinuxSikkerhet

Linux machines are known to be pretty secure. Linux-maskiner er kjent for å være ganske sikker. Studies have shown that Linux has been designed in a secure manner. Studier har vist at Linux har blitt utformet på en sikker måte. Yet, despite all the security features that come bundled with a Linux installation, you need to configure these features correctly to make them work for you. Likevel, til tross for alle sikkerhetsfunksjoner som kommer sammen med en Linux-installasjon, må du konfigurere disse funksjonene riktig å la dem arbeide for deg. I'll guide you through the process of setting up of one of the tools that help secure your machine – the firewall. Jeg veileder deg gjennom prosessen med å sette opp et av verktøyene som sikrer din maskin - brannmuren. We will use the iptables firewall for this exercise. Vi skal bruke iptables firewall for denne øvelsen. I am assuming that you are using a server running Red Hat Enterprise Linux 4 or similar. Jeg antar at du bruker en server som kjører Red Hat Enterprise Linux 4 eller lignende. However, most of the steps should work fine on other Linux distributions as well. Men det meste av trinnene skal fungere fint på andre Linux-distribusjoner også. In this article we will setup a firewall on a Linux server running the Apache Web Server, FTP, and SSH. I denne artikkelen vil vi opp en brannmur på en Linux-server som kjører Apache Web Server, FTP og SSH.

Let us first see what ports these applications use and which of them need to have a port open on the firewall. La oss først se hva som havner disse søknadene bruk og hvilke av dem må ha en port åpen på brannmuren.

The Apache web server runs on port 80 by default. Apache web server kjører på port 80 som standard. Apache is going to server all our web content on this port, therefore we need to keep this port open on the firewall. Apache skal server alle våre web-innhold på denne porten, derfor trenger vi å holde denne porten åpen på brannmuren. The SSH service runs on port 22. SSH-tjenesten kjører på port 22. We need to be able to remotely connect to our server to work, so we keep it open. Vi trenger å kunne koble til eksternt vår server til å fungere, så vi holde det åpent. FTP runs on port 21 and it too needs the port to be open to communication. FTP kjører på port 21, og den også må porten være åpen for kommunikasjon.

Next, make sure you have iptables installed. Deretter bør du kontrollere at iptables installert. Run this command as the root user: Kjør denne kommandoen som root bruker:

# rpm -qa | grep iptables # Rpm-qa | grep iptables

If you have iptables installed the system should give you the version of iptables you have installed. Hvis du har iptables installert systemet skal gi deg den versjonen av iptables du har installert. In case you don't you can try something like the following to get it and start it: I tilfelle du ikke kan prøve noe som følgende for å få den og starte den:

# yum install iptables # Yum installere iptables

# /etc/init.d/iptables start # / Etc / init.d / iptables start

To check what kind of configuration iptables is currently running with: For å finne ut hva slags konfigurasjon iptables kjører for øyeblikket med:

# iptables –list # Iptables-listen
Chain INPUT (policy ACCEPT) Chain INPUT (policy ACCEPT)
target prot opt source destination target prot opt source destination

Chain FORWARD (policy ACCEPT) Chain FORWARD (policy ACCEPT)
target prot opt source destination target prot opt source destination

Chain OUTPUT (policy ACCEPT) Chain OUTPUT (policy ACCEPT)
target prot opt source destination target prot opt source destination

This command will list out all the firewall rules that have been set currently. Denne kommandoen vil liste ut alle brannmur regler som er satt foreløpig. I will proceed with the assumption that you do not have any firewall rules in your iptables configuration. Jeg vil fortsette med antagelsen om at du ikke har noen brannmur regler i iptables konfigurasjonen. Let's now configure the firewall to allow open communication on the ports 80 for your web server, 22 for SSH, and port 21 for FTP. La oss nå konfigurere brannmuren til å tillate åpen kommunikasjon på port 80 på webserveren din, 22 for SSH, og port 21 for FTP. We'll also make sure that we block communication to any port other than specified. Vi vil også sørge for at vi blokkere kommunikasjonen til en annen port enn angitt.

Here's a firewall script configuration script. Her er en brannmur script skriptet. Create a new file and call it iptable-firewall.sh . Opprette en ny fil og kaller det-iptable firewall.sh. Copy the following text into it: Kopier inn følgende tekst i det:

#!/bin/sh #! / bin / sh

ANY=”0/0″ NOE = "0 / 0"
OPEN_PORTS=”21 22 80″ OPEN_PORTS = "21 22 80"

iptables -P INPUT ACCEPT iptables-P INPUT ACCEPT
iptables -P FORWARD ACCEPT iptables-P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT iptables-P OUTPUT ACCEPT

# Flush (-F) all specific rules # Flush (-F) alle spesifikke regler
iptables -F INPUT iptables-F INPUT
iptables -F FORWARD iptables-F FORWARD
iptables -F OUTPUT iptables-F OUTPUT

for port in $OPEN_PORTS for port in $ OPEN_PORTS
do gjøre
iptables -A INPUT -i eth0 -p tcp -s $ANY -d $ANY –destination-port $port –syn -j ACCEPT iptables-A INPUT-i eth0-p tcp-s $ NOEN-d $ NOEN-destinasjon-port $ port-syn-j ACCEPT
iptables -A INPUT -i eth1 -p tcp -s $ANY -d $ANY –destination-port $port –syn -j ACCEPT iptables-A INPUT-i eth1-p tcp-s $ NOEN-d $ NOEN-destinasjon-port $ port-syn-j ACCEPT
done ferdig

iptables -A INPUT -i eth1 -p icmp -s $ANY -d $ANY -j ACCEPT iptables-A INPUT-i eth1-p icmp-s $ NOEN-d $ NOEN-j ACCEPT

#Allow any related/established connections # Tillat andre relaterte / etablert forbindelser
iptables -A INPUT -i eth0 -m state –state ESTABLISHED,RELATED -j ACCEPT iptables-A INPUT-i eth0-m state-stat etablert, RELATED-j ACCEPT
iptables -A INPUT -i eth1 -m state –state ESTABLISHED,RELATED -j ACCEPT iptables-A INPUT-i eth1-m state-stat etablert, RELATED-j ACCEPT

#Kill everything else # Kill alt annet
iptables -A INPUT -i eth0 -j DROP iptables-A INPUT-i eth0-j DROP
iptables -A INPUT -i eth1 -j DROP iptables-A INPUT-i eth1-j DROP

#write for boot # skrive for støvel
iptables-save > /etc/sysconfig/iptables iptables-save> / etc / sysconfig / iptables

Now save the above file, grant it executable permissions and then run it: Nå lagrer filen ovenfor, gi den kjørbare tillatelser og deretter kjøre det:

# chmod +x iptable-firewall.sh # Chmod + x iptable-firewall.sh

# ./iptable-firewall.sh #. / Iptable-firewall.sh

Now check your firewall rules: Nå sjekk brannmuren regler:

# iptables –list # Iptables-listen

All your firewall rules should now be set. Alle dine brannmurregler skal nå være satt. Your server is now secure. Serveren er nå sikker. To make any modification or additions to this set of rules, edit the line where the OPEN_PORTS parameter is defined and add or remove ports form the list. Til å foreta endringer eller tilføyelser til dette settet med regler, redigere linje der OPEN_PORTS parameteren er definert og legge til eller fjerne portene danner listen. Remember to run the script again after making any changes to it. Husk å kjøre skriptet på nytt etter å endre den.

If all of this command line stuff has you a bit leery, see the tutorial Hvis alt dette kommandolinje ting har du litt leery, se veiledningen How to setup Firestarter – an easy to use Linux Firewall Hvordan sette opp Firestarter - en brukervennlig Linux-brannmur – which has an easy to use graphical interface. - Som har et brukervennlig grafisk grensesnitt.

Posted in Posted in Guest Blogger Guest Blogger , , Linux Linux , , Security Sikkerhet . .

Related Posts: Relaterte innlegg:

How to redirect traffic to another machine in Linux Hvordan omdirigere trafikken til en annen maskin i Linux
How to block an IP address in IPTables in Linux Slik blokkerer en IP-adresse i iptables på Linux
How to block DDOS attacks in Linux Slik blokkerer DDOS-angrep i Linux
How to schedule tasks on Linux using the 'at' command Slik planlegger du oppgaver på Linux ved å bruke 'at' kommando
How to download files from the Linux command line Hvordan laste ned filer fra Linux kommandolinjen

0 Responses 0 Responses

Stay in touch with the conversation, subscribe to the Holde kontakten med samtalen, abonnere på RSS feed for comments on this post RSS feed for kommentarer til dette innlegget . .



Some HTML is OK Some HTML is OK

or, reply to this post via eller svare på dette innlegget via trackback styrekule . .