Passa ai contenuti principali

simple port forwarding example

Immaginiamo di avere un firewall linux  e voler pubblicare un servizio di un server interno sulla rete, quindi vogliamo che ogni accesso al nostro indirizzo ip pubblico che riguarda la porta in oggetto sia rediretto sul nostro server interno.
in pratica esponiamo un servizio sulla rete pubblica recuperandolo da una rete privata.
Tutto questo si traduce in effetti in pochissime righe per iptables.

Dati di partenza : 
indirizzo ip del server interno esempio :     192.168.1.150

porta del servizio del server interno esempio : 8080

porta pubblica del servizio che vogliamo esporre : 80

creo un file in /root/forward.sh con la confgurazione di iptables

#!/bin/sh
echo 1 > /proc/sys/net/ipv4/ip_forward

/sbin/iptables -A PREROUTING -t nat -p tcp  --dport 80 -j DNAT --to 192.168.1.150:8080
/sbin/iptables -A FORWARD  -d 192.168.1.150 -p tcp --dport 80 -j ACCEPT

/sbin/iptables -t nat -A POSTROUTING -j MASQUERADE
volendo aggiungo al crontab @reboot /root/forward.sh

Commenti

Post popolari in questo blog

linux : software raid con mdadm

Software raid di linux. Fake raid e le bizarrie del mondo moderno. Ovvero la storia di come tenere i propri dati al sicuro usando più dischi. Preambolo (potrebbe essere noioso...): Il bios di un server allo startUp mi fa vedere un controller raid, ed io come uno sciocco ci credo, tanto da pensare di usarlo per mettere i dati al sicuro. In effetti un raid di livello 1 permette di scrivere contemporaneamente su 2 dischi, quindi se uno cede, l'altro continua a funzionare, dandoti il tempo ed il modo di intervenire e permettendoti di non perdere i tuoi preziosi dati. ci sono altri livelli di raid ma si possono approfondire ovunque. Dicevamo, il server ha un controller raid ed io lo voglio usare, quindi accedo al controller con f8 configuro 2 drive logici, di cui il secondo è formato da 2 dischi, per un totale di 3 dischi fisici e 2 logici. Parte linux e vedo sempre i 3 dischi ... sda, sdb ed sdc... e qui vado in crisi...  Per fortuna c'ho un amico che mi illumina, si tr...

Arduino : costruiamo un semplice gioco di memoria

Arduino è una schedina versatile, si presta e si adatta alla nostra fantasia. Immaginiamo di voler costruire un gioco di memoria, in cui posizioniamo 9 led e 9 pulsanti. facciamo accendere i led in maniera casuale ed attendiamo che il giocatore riproponga la combinazione tramite i tasti. Possiamo complicare i giocatori più bravi aumentando il numero di posizioni da indovinare ogni volta. Casomai associamo i vari led anche ad un suono così da avere una doppia associazione audio-visiva. Mettiamoci all'opera: Materiali consigliati : 1) scheda arduino 2) 1 led verde, 1 led rosso, 9 led gialli 3) 1 buzzer 4) 9 pulsanti 5) 1 mux 6) varie resistenze da 1k, 56k, 220 ohm, trimmer 20k 7) resistenza variabile 20k, display lcd 16x2 8) fili vari ed eventuali preferibilmente colorati 9) un supporto per piastricciare ( chi è ordinato può organizzarsi con una breadboard ) 10) saldatore e stagno per chi si vuole divertire davvero. progetto : Memory Game La griglia ...

Blender e gli scacchi fatti in casa con una stampante 3d

Un giorno ho deciso di provare una stampante 3D, e per prepararmi ho scelto di imparare a usare Blender. Sembrerà ovvio, ma per me questa decisione era cruciale: non trovavo alcuna gioia nell'idea di stampare solo modelli creati da altre persone. Volevo essere autonomo. Se mi fosse servito un ingranaggio, un coperchietto o qualsiasi altro oggetto, volevo essere in grado di disegnarlo e poi stamparlo. Se un giorno deciderete di acquistare una stampante 3D, vi do lo stesso consiglio: imparate prima a usare un programma di disegno 3D. C'è molta più soddisfazione nel stampare qualcosa che avete creato voi stessi. Ho scelto Blender come strumento di apprendimento perché è un software open source. Non solo è gratuito, ma è aperto a contributi da parte di tutti, un grande vantaggio per chi cerca flessibilità e innovazione. Così, prima ancora di acquistare la stampante, ho scaricato Blender dal sito ufficiale www.blender.org , l'ho installato e ho iniziato con il mio primo tutorial...