Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
Witam mam pod opieką serwer dostępowy dla niewielkiej lokalnej sieci. Od jakiegoś czasu ludzie mnie proszą żeby zmapować im jakiś port, bo jakiś program p2p im nie działa albo telekonferencja tlena nie chodzi ( [url]http://tlen.pl/docs/p2pinfo.html[/url]). Wyczytałem że można to zrobić np. redir-2.1. To go zainstalowałem ale chyba nie do końca to działa:
/redir-2.1# ./redir --lport=501 --cport=501 -caddr=192.168.222 --debug target is addr=192.168.1.222 addr=192.168.1.222: host unknown.
I w dodatku trzeba zapisywać coś w cronie: [url]http://www.szarp.com.pl/howto/howto/html/linux-redir.html[/url]
Jak i czym to zrobić żeby działało. I gdzie jest nportredird. Trzeba coś grzebnąc w firewallu? bo mam go włączony, aczkolwiek według zapewnień jego developera powinien być transparentny.
Offline
Kurde chyba sie udało. Zaciągłem i odpaliłem nportredir 0.6 :). Ludziska to działa. Znacie jakieś dokumentacje do tego programu co na nim można jeszcze zrobić.
Offline
dzięki wielkie. napiszcie gdzie szukać jakichś artów o mappowaniu, albo o tym programie DNAT.
BiExi jak przekieruje ruch z portu 80 na wewn. IP klienta to inni ludzie nie będą miec neta. Popraw mniejak źle piszę. I opisz prosze młodemu nieopierzonemu jeszcze adminowi co ta linijka znaczy. Nie chce co skopać z netem. o dobra zwierzu trzeba jeszcze ją umieć edytować.
Offline
bardziej przydał by sie FAQ o iptables i o protokole IP wogole ... to odbra lektura na początek.
to co napisala BieXi znaczy tyle :
zanim cokolwiek zrobisz z pakietem protokołu TCP wchodzącym przez eth0 na adres 213.17.152.111 i port 81 , przerzuć go na 192.168.21.1 i port 80 .. a tak szczerze polecam jakis iptables FAQ i krótki opis protokołu IP
Offline
nie nie beda miec net :]
bo to jest przekierowanie tylko portu z zewnetrznym IP do lanu porostu takie maloe oszustwo ze ten port bedzie sie odwoywal do danegouzytkownika aczkolwiek nie w pelni takjak powinno to byc :]
Offline
Zrobiłem ten wpis wpis:
iptables -t nat -A PREROUTING -i eth0 -p TCP -d xxx.xx.xxx.xxx --dport 81 -j DNAT --to 192.168.21.1:80
i mi wyrzuca:
bin# ./firewall restart ./firewall: -t: command not found
Co jest nie tak BiExi? Oto po krótce mój plik firewalla:
#!/bin/sh EXTIF="eth1" EXTIP="xx.xx.xx.xxx" INTIF="eth0" INTIP="192.168.1.1" INTNET="192.168.1.0/24" UNIVERSE="0.0.0.0/0" IPTABLES="/sbin/iptables" case "$1" in start) if test -z "$(lsmod|grep ip_tables|awk '{print $1}')"; then insmod ip_tables fi if test -z "$(lsmod|grep ip_conntrack|awk '{print $1}')"; then insmod ip_conntrack fi if test -z "$(lsmod|grep ip_conntrack_ftp|awk '{print $1}')"; then insmod ip_conntrack_ftp fi if test -z "$(lsmod|grep iptable_nat|awk '{print $1}')"; then insmod iptable_nat fi if test -z "$(lsmod|grep ip_nat_ftp|awk '{print $1}')"; then insmod ip_nat_ftp fi echo "1" > /proc/sys/net/ipv4/ip_forward echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts echo "1" > /proc/sys/net/ipv4/icmp_ignore_bogus_error_responses #echo "1" > /proc/sys/net/ipv4/conf/all/rp_filter $IPTABLES -P INPUT ACCEPT $IPTABLES -F INPUT $IPTABLES -P OUTPUT ACCEPT $IPTABLES -F OUTPUT $IPTABLES -P FORWARD DROP $IPTABLES -F FORWARD $IPTABLES -t nat -F $IPTABLES -t mangle -F $IPTABLES -X $IPTABLES -Z $IPTABLES -N test1 $IPTABLES -F test1 ##--------------------------------------------INPUT----------------------------------------## $IPTABLES -A INPUT -j test1 #$IPTABLES -A INPUT -i $INTIF -j REJECT --reject-with icmp-net-prohibited ##-------------------------------------------FORWARD--------------------------------------## $IPTABLES -A FORWARD -i $EXTIF -o $INTIF -m state --state ESTABLISHED,RELATED -j ACCEPT #$IPTABLES -A FORWARD -i $INTIF -o $EXTIF -j ACCEPT # lub filtr po MAC $IPTABLES -A FORWARD -o $EXTIF -j test1 #$IPTABLES -A FORWARD -i $INTIF -o $EXTIF -j REJECT --reject-with icmp-net-prohibited #-----translacja adresow------ # serwer proxy $IPTABLES -t nat -A PREROUTING -i $INTIF -p tcp -d ! xx.xx.xxx.xxx --dport 80 -j REDIRECT --to-port 3128 # NAT #$IPTABLES -t nat -A POSTROUTING -o $EXTIF -s $INTNET -j MASQUERADE $IPTABLES -t nat -A POSTROUTING -o $EXTIF -s $INTNET -j SNAT --to-source xx.xx.xxx.xxx #mapowanie portów >>>>>>>>>>>>NIE DZIAŁA<<<<<<<<<<<<<<<<< $iptables -t nat -A PREROUTING -i eth1 -p TCP -d xx.xx.xxx.xxx --dport 501 -j DNAT --to 192.168.1.200:501 ##---------------------------------markowanie pakietow - statystyki------------------------## #--------upload---------- $IPTABLES -t mangle -A PREROUTING -s 192.168.1.10 -j MARK --set-mark 810 ;; stop) $IPTABLES -P INPUT ACCEPT $IPTABLES -F INPUT $IPTABLES -P OUTPUT ACCEPT $IPTABLES -F OUTPUT $IPTABLES -P FORWARD DROP $IPTABLES -F FORWARD $IPTABLES -t nat -F $IPTABLES -t mangle -F $IPTABLES -F test1 $IPTABLES -X $IPTABLES -Z #rmmod iptable_nat #rmmod ip_conntrack #rmmod ip_table echo "0" > /proc/sys/net/ipv4/ip_forward ;; restart) $0 stop $0 start ;; *) echo "Uzycie: firewall {start|stop|restart}" exit 1 ;; esac exit 0
Ale jak dałem wpis bez dolara, to zaskoczyło :/ pytanie tylko czy to działa
Offline
W linii 83 masz
$iptables -t nat -A PREROUTING -i eth1 -p TCP -d 192.168.0.120 --dport 501 -j DNAT --to 192.168.1.200:501
a powinieneś mieć
$IPTABLES -t nat -A PREROUTING -i eth1 -p TCP -d 192.168.0.120 --dport 501 -j DNAT --to 192.168.1.200:501
Offline
Time (s) | Query |
---|---|
0.00013 | SET CHARSET latin2 |
0.00004 | SET NAMES latin2 |
0.00117 | SELECT u.*, g.*, o.logged FROM punbb_users AS u INNER JOIN punbb_groups AS g ON u.group_id=g.g_id LEFT JOIN punbb_online AS o ON o.ident='18.227.140.100' WHERE u.id=1 |
0.00082 | REPLACE INTO punbb_online (user_id, ident, logged) VALUES(1, '18.227.140.100', 1738280098) |
0.00041 | SELECT * FROM punbb_online WHERE logged<1738279798 |
0.00076 | DELETE FROM punbb_online WHERE ident='18.117.152.156' |
0.00089 | DELETE FROM punbb_online WHERE ident='3.138.32.110' |
0.00074 | DELETE FROM punbb_online WHERE ident='3.143.239.135' |
0.00084 | DELETE FROM punbb_online WHERE ident='3.145.12.100' |
0.00077 | DELETE FROM punbb_online WHERE ident='3.145.202.104' |
0.00076 | DELETE FROM punbb_online WHERE ident='3.21.125.193' |
0.00071 | SELECT topic_id FROM punbb_posts WHERE id=7301 |
0.00008 | SELECT id FROM punbb_posts WHERE topic_id=886 ORDER BY posted |
0.00055 | SELECT t.subject, t.closed, t.num_replies, t.sticky, f.id AS forum_id, f.forum_name, f.moderators, fp.post_replies, 0 FROM punbb_topics AS t INNER JOIN punbb_forums AS f ON f.id=t.forum_id LEFT JOIN punbb_forum_perms AS fp ON (fp.forum_id=f.id AND fp.group_id=3) WHERE (fp.read_forum IS NULL OR fp.read_forum=1) AND t.id=886 AND t.moved_to IS NULL |
0.00005 | SELECT search_for, replace_with FROM punbb_censoring |
0.00082 | SELECT u.email, u.title, u.url, u.location, u.use_avatar, u.signature, u.email_setting, u.num_posts, u.registered, u.admin_note, p.id, p.poster AS username, p.poster_id, p.poster_ip, p.poster_email, p.message, p.hide_smilies, p.posted, p.edited, p.edited_by, g.g_id, g.g_user_title, o.user_id AS is_online FROM punbb_posts AS p INNER JOIN punbb_users AS u ON u.id=p.poster_id INNER JOIN punbb_groups AS g ON g.g_id=u.group_id LEFT JOIN punbb_online AS o ON (o.user_id=u.id AND o.user_id!=1 AND o.idle=0) WHERE p.topic_id=886 ORDER BY p.id LIMIT 0,25 |
0.00088 | UPDATE punbb_topics SET num_views=num_views+1 WHERE id=886 |
Total query time: 0.01042 s |