выделенное жирным правило не пропускает ничего за себя. Так что проверка на разрешенность ftp должна быть вставлена перед ним
Printable View
Недавно на моем WL-500w произошел программный сбой - приходится перенастраивать. Вот и дело дошло и до SSH. Все настроил без проблем благодаря доходчивым пояснениям знатоков в этой ветке, за что большое им спасибо. Добавил в post-firewall часть кода для контроля попыток залогиниться на сервер SSH в соответствии с сообщением al37919. Вроде, работает все исправно. По крайней мере, меня пускает на мой маршрутизатор с других компьютеров через интернет. Также я установил syslog-ng для пущей информативности логов. Периодически наблюдаю попытки залогиниться на моем сервере SSH, пока безуспешные. Только почему-то не выводится IP-адрес "плохого парня". Вывод в таком формате:
Раньше, до сбоя, я помню, что адрес выводился в лог.Code:21:46:14 09-09-2010 (info|authpriv|dropbear) dropbear[770]: exit before auth: Exited normally
Все мои действия авторизации на сервере SSH и выходе с него логируются нормально - лог в полном объеме, с IP-адресом.
Прошивка установлена WL500W-1.9.2.7-d-r1825.trx, SSH встроен в прошивку, запущен на нестандартном порту (скажем, 12345). В веб-интерфейсе отключена защита от лобовой атаки.
Вывод iptables (MAC-адреса заменены на фиктивные, IP-адрес маршрутизатора тоже - 999.999.999.999, на период настройки марщрутизатора открыт доступ к веб-интерфейсу из интернет через порт 55555):
Файл /proc/net/ipt_recent/SSH_ATTACKER всегда пуст. Хотя дата его модификации постоянно обновляется.Code:IP Tables
Chain INPUT (policy DROP 51213 packets, 4185K bytes)
pkts bytes target prot opt in out source destination
11381 884K MACS all -- br0 * 0.0.0.0/0 0.0.0.0/0
320 31078 DROP all -- * * 0.0.0.0/0 0.0.0.0/0 state INVALID
64322 45M ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED
90 5664 ACCEPT all -- lo * 0.0.0.0/0 0.0.0.0/0 state NEW
5685 400K ACCEPT all -- br0 * 0.0.0.0/0 0.0.0.0/0 state NEW
66497 5262K SECURITY all -- eth1 * 0.0.0.0/0 0.0.0.0/0 state NEW
4 192 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:12345 flags:0x17/0x02
100 4800 ACCEPT tcp -- * * 0.0.0.0/0 192.168.1.1 tcp dpt:80
0 0 SSH_EVAL tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:12345
Chain FORWARD (policy ACCEPT 192K packets, 16M bytes)
pkts bytes target prot opt in out source destination
27M 23G MACS all -- br0 * 0.0.0.0/0 0.0.0.0/0
12483 630K ACCEPT all -- br0 br0 0.0.0.0/0 0.0.0.0/0
0 0 DROP all -- * * 0.0.0.0/0 0.0.0.0/0 state INVALID
37M 24G ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED
0 0 DROP all -- !br0 eth1 0.0.0.0/0 0.0.0.0/0
45043 2277K SECURITY all -- !br0 * 0.0.0.0/0 0.0.0.0/0 state NEW
13851 696K ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0 ctstate DNAT
0 0 DROP all -- * br0 0.0.0.0/0 0.0.0.0/0
Chain OUTPUT (policy ACCEPT 60421 packets, 51M bytes)
pkts bytes target prot opt in out source destination
Chain BRUTE (0 references)
pkts bytes target prot opt in out source destination
Chain MACS (2 references)
pkts bytes target prot opt in out source destination
27M 23G RETURN all -- * * 0.0.0.0/0 0.0.0.0/0 MAC 11:11:11:11:11:11
201 106K RETURN all -- * * 0.0.0.0/0 0.0.0.0/0 MAC 22:22:22:22:22:22
0 0 RETURN all -- * * 0.0.0.0/0 0.0.0.0/0 MAC 33:33:33:33:33:33
59997 4781K RETURN all -- * * 0.0.0.0/0 0.0.0.0/0 MAC 44:44:44:44:44:44
0 0 RETURN all -- * * 0.0.0.0/0 0.0.0.0/0 MAC 55:55:55:55:55:55
0 0 RETURN all -- * * 0.0.0.0/0 0.0.0.0/0 MAC 66:66:66:66:66:66
0 0 RETURN all -- * * 0.0.0.0/0 0.0.0.0/0 MAC 77:77:77:77:77:77
0 0 RETURN all -- * * 0.0.0.0/0 0.0.0.0/0 MAC 88:88:88:88:88:88
2 658 DROP all -- * * 0.0.0.0/0 0.0.0.0/0
Chain SECURITY (2 references)
pkts bytes target prot opt in out source destination
13724 693K RETURN tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp flags:0x17/0x02 limit: avg 1/sec burst 5
338 13520 RETURN tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp flags:0x17/0x04 limit: avg 1/sec burst 5
51099 4179K RETURN udp -- * * 0.0.0.0/0 0.0.0.0/0 limit: avg 5/sec burst 5
7 464 RETURN icmp -- * * 0.0.0.0/0 0.0.0.0/0 limit: avg 5/sec burst 5
46372 2653K DROP all -- * * 0.0.0.0/0 0.0.0.0/0
Chain SSH_EVAL (1 references)
pkts bytes target prot opt in out source destination
0 0 tcp -- !br0 * 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:12345 recent: SET name: SSH_ATTACKER side: source
0 0 DROP tcp -- !br0 * 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:12345 recent: UPDATE seconds: 600 hit_count: 4 name: SSH_ATTACKER side: source
0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:12345 flags:0x17/0x02
Chain logaccept (0 references)
pkts bytes target prot opt in out source destination
0 0 LOG all -- * * 0.0.0.0/0 0.0.0.0/0 state NEW LOG flags 7 level 4 prefix `ACCEPT '
0 0 ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0
Chain logdrop (0 references)
pkts bytes target prot opt in out source destination
0 0 LOG all -- * * 0.0.0.0/0 0.0.0.0/0 state NEW LOG flags 7 level 4 prefix `DROP '
0 0 DROP all -- * * 0.0.0.0/0 0.0.0.0/0
IP Tables NAT
Chain PREROUTING (policy ACCEPT 277K packets, 26M bytes)
pkts bytes target prot opt in out source destination
107K 6710K VSERVER all -- * * 0.0.0.0/0 999.999.999.999
Chain POSTROUTING (policy ACCEPT 15273 packets, 793K bytes)
pkts bytes target prot opt in out source destination
1584 78569 SNAT all -- * br0 192.168.1.0/28 192.168.1.0/28 to:192.168.1.1
113K 11M SNAT all -- * eth1 !999.999.999.999 0.0.0.0/0 to:999.999.999.999
Chain OUTPUT (policy ACCEPT 1903 packets, 125K bytes)
pkts bytes target prot opt in out source destination
Chain VSERVER (1 references)
pkts bytes target prot opt in out source destination
513 24624 DNAT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:55555 to:192.168.1.1:80
46132 2328K DNAT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:61157 to:192.168.1.3:61157
0 0 DNAT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:10308 to:192.168.1.3:10308
0 0 DNAT udp -- * * 0.0.0.0/0 0.0.0.0/0 udp dpt:2302 to:192.168.1.3:2302
В предыдущем сообщении все не поместилось, продолжу в этом.
post-firewall выглядит так:
Собственно, меня не напрягает отсутствие в логах IP-адреса атакующего. Но для полноты картины не помешает. Тем более, что раньше все работало. К тому же, возможно, это является признаком неправильных настроек в iptables или еще где.Code:#!/bin/sh
PATH=/sbin:/bin:/usr/sbin:usr/bin:/opt/sbin:/opt/bin:/opt/local/bin
logger "post-firewall started"
#this rule can be uncommented for the testing period
#iptables -A INPUT -p tcp --syn --dport 2222 -j ACCEPT
# set default policy
iptables -P INPUT DROP
# remove last default rule
iptables -D INPUT -j DROP
# ***ssh subsection begin***
SSH_PORT=12345
SSH_ALLOW=/usr/local/etc/ssh.allow
SSH_DENY=/usr/local/etc/ssh.deny
# Create a new SSH_EVAL chain which will evaluate incoming connections to ssh server from WAN
iptables -N SSH_EVAL
# Transfer all ssh connections to the SSH_EVAL chain
iptables -A INPUT -p tcp --dport $SSH_PORT -j SSH_EVAL
# Evaluate incoming ssh connections through ssh.allow and ssh.deny lists
for i in `awk '{print $1}' $SSH_ALLOW`
do
iptables -A SSH_EVAL -p tcp --syn -s $i --dport $SSH_PORT -j ACCEPT
done
for i in `awk '{print $1}' $SSH_DENY`
do
iptables -A SSH_EVAL -p tcp --syn -s $i --dport $SSH_PORT -j DROP
done
# Block annoying intruder's attemtps (after --hitcount connections occured, wait --seconds after the last connection attempt)
# Remember, that both successful and unsuccessful connections are counted
iptables -A SSH_EVAL -i ! $3 -p tcp -m state --state NEW --dport $SSH_PORT -m recent --set --name SSH_ATTACKER --rsource
iptables -A SSH_EVAL -i ! $3 -p tcp -m state --state NEW --dport $SSH_PORT -m recent --update --seconds 600 --hitcount 4 --name SSH_ATTACKER --rsource -j DROP
# Accept the rest of ssh connections which were able to pass through the filtering
iptables -A SSH_EVAL -p tcp --syn --dport $SSH_PORT -j ACCEPT
# ***ssh subsection end***
# Low PPTP speed fix
iptables -t nat -nvL POSTROUTING | grep MASQUERADE | awk '{
"ifconfig "$7" | grep Mask" | getline ip;
split(ip,ip,":"); split(ip[2],ip," ");
split($8,src,"!");
if (src[1]=="") {src="! -s "src[2]} else {src="-s "src[1]};
if ($9=="0.0.0.0/0") {dst=""} else {dst="-d "$9};
system("iptables -t nat -A POSTROUTING -o "$7" "src" "dst" -j SNAT --to-source "ip[1]);
system("iptables -t nat -D POSTROUTING -o "$7" "src" "dst" -j MASQUERADE");
}'
Не подскажут ли уважаемые знатоки, где копать? Если вопрос уже обсуждался, подскажите, пожалуйста, где смотреть, сам не нашел.
Почему-то при использовании этого скрипта (post-firewall) uTorrent не может принимать входящие подключения, встроенная проверка говорить, что порт закрыт.
Помогите пожалуйста разобраться: что означают строки
grep -q -- '--dport 0\b' /tmp/nat_rules && grep -v -- '--dport 0\b' /tmp/nat_rules | iptables-restore
iptables -I FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu
и не может ли быть проблема в том, что мы обнуляем все правила первыми двумя строчками скрипта?
Заранее большое спасибо!
500 gpV2 с прошивкой от энтузиастов 1.9.2.7-d-r1087.
нужен мне удаленный доступ снаружи по SSH.
регистрируюсь в dyndns - роутер извне пингуется нормально.
включаю в нем SSH на порту 443.
иду на nettols.ru, проверяю - говорит, что извне порт 443 закрыт.
включаю на роутере доступ к web морде по 8080.
пытаюсь извне в гуглхроме залезть на http:// мойдинднс:8080 - нет ответа от сервера.
что и где подкрутить чайнику?
спасибо.
исходные данные:
wl500gp v.1 - 1.9.2.7-d-r2624
белый динамический ip, обращаюсь через DynDNS.
ssh слушает порт, например, 57000.
с работы (Win7 Ultimate, сижу за фрей, все наружу открыто) пытаюсь зайти на роутер с помощью putty. разрешил в виндовом файрволле putty, подключился на порт, например, 57000, но спутал логин и закрыл ее.
после этого пробовал еще раз десять - ноль эффекта, таймаут подключения.
добрался до дома, вижу в логах удачное подключение
Вопрос, в общем, в следующем - откуда взялся этот левый порт, и что я вообще делаю не так?Code:Mar 30 10:27:54 dropbear[557]: Child connection from my_work_ip:55558
Mar 30 10:28:15 dropbear[557]: login attempt for nonexistent user from my_work_ip:55558
Mar 30 10:28:21 dropbear[557]: exit before auth: Exited normally
Спасибо.
my_work_ip:55558 --- это исходящий порт
login attempt for nonexistent user from my_work_ip:55558 --- это вполне естественный отлуп при неправильном имени пользователя
exit before auth: Exited normally --- это закрытие второй копии dropbear, которая создается на каждое новое соединение.
В общем, нет причин для беспокойства --- судя по приведенному логу у вас все в абажуре.
те в логе dropbear больше не упоминался?
причем по возвращении dropbear в запущенных процессах присутствовал?
что можно сделать:
1) если подозрения на защиту recent и у фри адрес статический, то его можно прописать в белый список (файл /usr/local/etc/ssh.allow ). Тогда на этот адрес/подсеть она не распространяется
2) если действительно падает dropbear, то можно в cron засунуть что-то подобное для его переподъема раз минут в 5-10:
3) Если заниматься исследованием проблемы связанной с файрволом, то желательно физически находиться внутри него. Т.е. делаем коннект на фрю и с нее логинимся обратно и ищем где и почему что-то не так.Code:#! /bin/sh
# This script checks to make sure important
# processes are running (in case they crash).
# It also makes sure annoying or unwanted
# programs are not running.
# Based on:
# http://wl500g.info/showthread.php?t=2556
ensure()
{
[ $ENSURE = "no" ] && exit
name=$1
cmd=$2
[ -z "$2" ] && cmd="$name"
running=`/bin/ps | grep "$name" | grep -v "grep"`
if [ -z "$running" ]; then
logger -t ensure-proc "$name: restarting"
$cmd
fi
}
ensure dropbear
да, и пускает и изнутри, и с мобилки. в логе больше нет его.
зватра обязательно попробую и отпишусь. однако, почему один раз все-таки проскочил коннект, непонятно. случилось это после внесения исключения в виндовый файрволл.
уверен, что не падает, все стабильно.
да, точно, вот об этом как-то и не подумал.
завтра проверю, отпишусь, спасибо.
В общем, все оказалось проще и дурнее.
Из-за глючного adsl интернета очень долго происходит соединение, и putty успевает отвалиться по таймауту.
А так - все работает.
Добрый день.
Заметил стабильное зависание роутера после удаленного подключения к нему по ssh. Причем виснет "намертво", так что после не из локалки, не из внешки к нему нет доступа (ни web, ни ssh, ни wi-fi, ни dhcp с него не работают). Только ping из локалки отвечает, если подключиться кабелем и назначить ip вручную. Помогает передергивание питания.
Не было ни одного раза чтобы не "повис". В остальных случаях работает сутки напролет.
В чем может быть причина?
P.S. Прошивка - 1.9.2.7-rtn-r3121.
Уже какой день бьюсь, не могу зайти из вне по ssh.
В веб интерфейсе всё что связанно с ssh отключено.
Настроено соединение ddns через no-ip.com
Прошивка последняя от энтузиастов. роутер wl-500gP
Code:cat /tmp/local/sbin/post-boot
dropbear > /dev/null 2>&1
cat /tmp/local/sbin/post-firewall
iptables -P INPUT DROP
iptables -D INPUT -j DROP
#Исправляем низкую скорость PPTP
iptables -t nat -nvL POSTROUTING | grep MASQUERADE | awk '{
"ifconfig "$7" | grep Mask" | getline ip;
split(ip,ip,":"); split(ip[2],ip," ");
split($8,src,"!");
if (src[1]=="") {src="! -s "src[2]} else {src="-s "src[1]};
if ($9=="0.0.0.0/0") {dst=""} else {dst="-d "$9};
system("iptables -t nat -A POSTROUTING -o "$7" "src" "dst" -j SNAT --to-source "ip[1]);
system("iptables -t nat -D POSTROUTING -o "$7" "src" "dst" -j MASQUERADE");
}'
# ***ssh subsection begin***
#iptables -t raw -A PREROUTING -p tcp --dport 22 -j DROP
iptables -A INPUT -p tcp --dport 22 -j DROP
iptables -t nat -A PREROUTING -p tcp --dport 56789 -j REDIRECT --to-ports 22
# ***ssh subsection end***
iptables -A INPUT -j DROP
iptables -L -vn
Chain INPUT (policy DROP 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:3128
0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:443
0 0 ACCEPT all -- tun0 * 0.0.0.0/0 0.0.0.0/0
0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:2613
0 0 DROP all -- * * 0.0.0.0/0 0.0.0.0/0 state INVALID
2620 516K ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED
0 0 ACCEPT all -- lo * 0.0.0.0/0 0.0.0.0/0 state NEW
166 51485 ACCEPT all -- br0 * 0.0.0.0/0 0.0.0.0/0 state NEW
0 0 SECURITY all -- ppp0 * 0.0.0.0/0 0.0.0.0/0 state NEW
57 8804 SECURITY all -- vlan1 * 0.0.0.0/0 0.0.0.0/0 state NEW
14 5190 ACCEPT udp -- * * 0.0.0.0/0 0.0.0.0/0 udp spt:67 dpt:68
0 0 DROP tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:22
40 3530 DROP all -- * * 0.0.0.0/0 0.0.0.0/0
iptables -t nat -nvL PREROUTING
Chain PREROUTING (policy ACCEPT 34 packets, 2597 bytes)
pkts bytes target prot opt in out source destination
0 0 DNAT tcp -- eth1 * 0.0.0.0/0 0.0.0.0/0 tcp dpt:2613 to:192.168.25.1:2613
4 251 VSERVER all -- * * 0.0.0.0/0 94.24.196.21
0 0 VSERVER all -- * * 0.0.0.0/0 10.62.86.84
2 304 REDIRECT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:56789 redir ports 22
0 0 DNAT tcp -- eth1 * 0.0.0.0/0 0.0.0.0/0 tcp dpt:443 to:192.168.25.1:443
С локалки захожу и по 22 и по 56789 порту, хотя пытаюсь 22 дропать. С WAN ну ни в какую, пишет:
$ ssh ***.no-ip.info
ssh: connect to host ***.no-ip.info port 22: No route to host
Не пойму, почему не видно соединение по netstat?
netstat -na
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:8081 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:53 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:5431 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:3128 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:443 0.0.0.0:* LISTEN
tcp 0 0 10.62.86.84:1024 78.29.3.77:1723 ESTABLISHED
udp 0 0 0.0.0.0:1025 0.0.0.0:*
udp 0 0 0.0.0.0:514 0.0.0.0:*
udp 0 0 127.0.0.1:34954 0.0.0.0:*
udp 0 0 0.0.0.0:53 0.0.0.0:*
udp 0 0 0.0.0.0:67 0.0.0.0:*
udp 0 0 0.0.0.0:1900 0.0.0.0:*
Что вы увидели сложного?
Давайте по простому.
По локалке захожу на 22 порт.Code:$ cat /tmp/local/sbin/post-firewall
#!/bin/sh
iptables -P INPUT DROP
iptables -D INPUT -j DROP
iptables -A INPUT -p tcp -m state --state NEW --dport 22 -m recent --set --name SSH_ATTACKER --rsource
iptables -A INPUT -p tcp -m state --state NEW --dport 22 -m recent --update --seconds 600 --hitcount 6 --name SSH_ATTACKER --rsource -j DROP
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -j DROP
$ iptables -L -vn
Chain INPUT (policy DROP 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
0 0 DROP all -- * * 0.0.0.0/0 0.0.0.0/0 state INVALID
2414 472K ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED
0 0 ACCEPT all -- lo * 0.0.0.0/0 0.0.0.0/0 state NEW
156 44601 ACCEPT all -- br0 * 0.0.0.0/0 0.0.0.0/0 state NEW
0 0 SECURITY all -- ppp0 * 0.0.0.0/0 0.0.0.0/0 state NEW
44 10302 SECURITY all -- vlan1 * 0.0.0.0/0 0.0.0.0/0 state NEW
16 5846 ACCEPT udp -- * * 0.0.0.0/0 0.0.0.0/0 udp spt:67 dpt:68
0 0 tcp -- * * 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:22 recent: SET name: SSH_ATTACKER side: source
0 0 DROP tcp -- * * 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:22 recent: UPDATE seconds: 600 hit_count: 6 name: SSH_ATTACKER side: source
0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:22
26 4400 DROP all -- * * 0.0.0.0/0 0.0.0.0/0
$ netstat -na
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:8081 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:53 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:5431 0.0.0.0:* LISTEN
tcp 0 0 10.62.86.84:1024 78.29.3.44:1723 ESTABLISHED
udp 0 0 0.0.0.0:1025 0.0.0.0:*
udp 0 0 0.0.0.0:514 0.0.0.0:*
udp 0 0 127.0.0.1:34954 0.0.0.0:*
udp 0 0 0.0.0.0:53 0.0.0.0:*
udp 0 0 0.0.0.0:67 0.0.0.0:*
udp 0 0 0.0.0.0:1900 0.0.0.0:*
Почему 22 порт не прослушивается? Что ещё показать?
Непонятен смысл всех приведенных выше телодвижений - увеличение скорости давно не актуально для текущих прошивок, поскольку патч тупо в них включен, все настройки ssh прекрасно работают и через web мордочку, поэтому вопрос - и зачем все выше перечисленные пляски с бубном? )
П.С. Для проброса наружу ssh лучше использовать например порт 1122 а не стандартный, бо большинство провайдеров стандатный давят, для безопасности, об этом опять же 1000 раз писалось )
При установке в веб морде и при выставлении доступа с WAN, зайти с внешки я не могу. По этому я и пробовал отключать в веб интерфейсе и прописать в исполняемые скрипты. Плюс я хотел пробросить (REDIRECT) на 22 порт, что бы оставить всё на своих портах и чтоб он был закрыт на внешку. У провайдера открыты порты. Ok.
Code:$ iptables -L -vn
Chain INPUT (policy DROP 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:3128
0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:443
0 0 ACCEPT all -- tun0 * 0.0.0.0/0 0.0.0.0/0
0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:2613
0 0 DROP all -- * * 0.0.0.0/0 0.0.0.0/0 state INVALID
15639 3612K ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED
0 0 ACCEPT all -- lo * 0.0.0.0/0 0.0.0.0/0 state NEW
950 208K ACCEPT all -- br0 * 0.0.0.0/0 0.0.0.0/0 state NEW
0 0 SECURITY all -- ppp0 * 0.0.0.0/0 0.0.0.0/0 state NEW
585 134K SECURITY all -- vlan1 * 0.0.0.0/0 0.0.0.0/0 state NEW
89 33665 ACCEPT udp -- * * 0.0.0.0/0 0.0.0.0/0 udp spt:67 dpt:68
0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:22 flags:0x17/0x02
0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:*****
484 99548 DROP all -- * * 0.0.0.0/0 0.0.0.0/0
$ netstat -na
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:8081 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:53 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:5431 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:3128 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:443 0.0.0.0:* LISTEN
tcp 0 0 10.62.86.84:1024 78.29.3.44:1723 ESTABLISHED
tcp 0 0 192.168.25.1:22 192.168.25.11:56784 ESTABLISHED
udp 0 0 0.0.0.0:1025 0.0.0.0:*
udp 0 0 0.0.0.0:514 0.0.0.0:*
udp 0 0 127.0.0.1:34954 0.0.0.0:*
udp 0 0 0.0.0.0:53 0.0.0.0:*
udp 0 0 0.0.0.0:67 0.0.0.0:*
udp 0 0 0.0.0.0:1900 0.0.0.0:*
Кинул в личку.
Личку почисти, не могу сообщение послать.
Из локалки то без проблем могу зайти, а с внешки: ssh: connect to host ****.no-ip.info port ****: No route to host.
Хочешь сказать прописывать маршрут до no-ip.com?
Для начала проверить пинг на самого себя изнутри по внешнему адресу -
ping ****.no-ip.info, это должно работать, если пинг проходит, а соединение все равно нет, значит где то по дороге убивается фаирволом, скорее всего провайдера.
Либо самый тупой вариант у вас серый IP и вы за провайдерским NAT (пинги тогда не пройдут ))
Пинги у меня зарезаются настройкой iptables. Порты открыты у провайдера.
Вопрос решился сменой сервера c no-ip на ddns.
Доступ появился, надо было в строке писать логин на ddns, а не емейл.
Я прописал так:
Почему? Стараюсь не менять стандартные порты у приложений.Code:cat /tmp/local/sbin/post-firewall
#!/bin/sh
iptables -P INPUT DROP
iptables -D INPUT -j DROP
iptables -A INPUT -p tcp --dport 12345 -j ACCEPT
iptables -t nat -A PREROUTING -p tcp --dport 22 -j DROP
iptables -t nat -A PREROUTING -p tcp --dport 12345 -j REDIRECT --to-ports 22
iptables -A INPUT -j DROP
Здесь идёт простой проброс с 12345 порта на 22. В то же время 22 порт прикрыт.
Почитайте, какие действия iptables предназначены для каких таблиц.
Например, в PREROUTING действия DROP быть не должно.
Спасибо за совет, но сделал как и писал ранее через REDIRECT, проблема была с хостингом no-ip.com, через него не проходили запросы. Поставил dyndns, всё сразу заработало в лучшем виде.
reiten, возможно, но как я понимаю, надо хотя бы выдержку из мана кидать (как я понял это - http://www.opennet.ru/docs/RUS/iptab...REROUTINGCHAIN), а не заявлять ничем не подтверждая. (raw у меня не работает, модуль нужен, на форуме не нашёл), но правило работает же. )
nat PREROUTING Эта цепочка используется для трансляции сетевых адресов (Destination Network Address Translation). Source Network Address Translation выполняется позднее, в другой цепочке. Любого рода фильтрация в этой цепочке может производиться только в исключительных случаях.
Как сделать telnet доступным из вне?
прошивка: 1.9.2.7-rtn-r3121
SSH не устраивает потому что в одном месте где мне нужен роутер его режут, и похоже на уровне протокола.
А вот telnet работает.
Спасибо.
Носом можете ткнуть в мою ошибку? Или вы мои 2 последних поста даже не прочитали?
Я понимаю, что послать читать маны это простой вариант, помочь же тяжелее. Плюс у меня немного другой профиль и я тоже могу вас за пояс заткнуть, типа, учите закон ома или что такое разность потенциалов.
Спасибо за совет, я попробую сам разобраться, а вам совет, спуститесь на землю. Если в ближайшее время никто не ответит, потру посты, так что копируйте для башорга. )
А зачем вы включаете функцию, совершенно не понимая, как она работает? Вы включили перенаправление ВСЕХ ВХОДЯЩИХ соединений на вашу PS3 и какого результата вы ожидали? У вас на PS3 на порту 5222 есть ssh?
:D А не подскажите, почему я операционник в розетку пихаю, хочу усислить напругу из розетки, а он взрывается и пробки вышибает? Что я делаю не так? :p
Удалите, если не сложно, инфы в них нет, а очень объемны. Вы если что надо еще будет, не пихайте простыни в текст, а прикрепите как файлы вложения ;)
Я ожидал, что именно для PS3 всё будет открыто. Не хочу прописывать отдельные порты, проще же записать в DMZ. Я не прав?
Розетка высоковольтная ))) Уменьшите напругу раз в 15.
Ок.
ps. smi спасибо за фразу "перенаправление ВСЕХ ВХОДЯЩИХ", прописал в Virtual Server порты для нужных мне служб, а в DMZ прописал PS3, вроде всё работает. Надеюсь правильно сделал. Я думал, если я в DMZ пропишу IP, то все порты будут открыты только на нём, а другие машины в локальной сети будут работать по остальным правилам и DMZ их не затронет.
Да, так оно и есть - весь трафик заворачивается на PS3.
Все остальные правила, прописанные ПОСЛЕ DMZ - пустая трата текста, потому, что не обрабатываются системой ВООБЩЕ.
Это все равно, что надеяться, распилив трубу с водой, и отнеся второй конец трубы подальше, что до него дойдет хоть часть воды (с электричеством аналогии в голову не пришло).