Прошу помочь. Стоит Fedora 12 запущен ssh сервер, необходимо к нему получать доступ из вне через 443 порт. В iptables прописал
-A INPUT -p tcp -m state --state NEW -m tcp --dport 443 -j ACCEPT
но доступа все равно нет. Проверял, может занят этот порт
netstat -nlp | grep 443
ничего пусто
httpd выключен в службах, да и не ставил apache.
iptables -L -n -v
Chain INPUT (policy ACCEPT 88 packets, 12449 bytes)
pkts bytes target prot opt in out source destination
4101 446K ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED
0 0 ACCEPT icmp -- * * 0.0.0.0/0 0.0.0.0/0
1 60 ACCEPT all -- lo * 0.0.0.0/0 0.0.0.0/0
12 624 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:443
если ввожу netstat то 443 порта так и не вижу.
В конфиге sshd.conf прописал Port 443. Если прописываю другой порт, и так же открываю через iptables, то все работает. А 443 нет. Прошу помочь
а что это за sshd.conf ?Конфиг ssh это /etc/ssh/sshd_config
443 порт занят https. Используйте другой. Например 2022.
> 443 порт занят https. Используйте другой. Например 2022.он же писал, что netstat ничего не выдает по 443, и апач у него не стоит...
имеется ввиду конфигурационный файл ssh
> имеется ввиду конфигурационный файл sshи
netstat -nlp | grep 443
ничего пусто
Советую не ломать нормальное распределение портов на машине, а просто воспользоваться стандартной целью iptables - REDIRECT, которая перенаправляет внешнее подключение на X-порт самому серверу на Y-порт.
>REDIRECT
>This target is only valid in the nat table, in the PREROUTING and OUTPUT chains, and user-defined chains which are only called from those chains. It redirects the packet to the machine itself by changing the destination IP to the primary address of the incoming interface (locally-generated packets are mapped to the 127.0.0.1 address). It takes one option:
>--to-ports port[-port]
> This specifies a destination port or range of ports to use: without this, the destination port is never altered. This is only valid if the rule also specifies -p tcp or -p udp.Т.е. клиент ломится, например, на 57214 порт, а REDIRECT перенаправляет весь этот трафик приложению на сервере, которое слушает свой обычный порт, например 22.
При этом никто не мешает дропать всё, что ломится из вне, напрямую на 22 порт.
-iptables -t raw -A PREROUTING -d адрес машины -p tcp --dport 22 -j DROP
-iptables -t nat -A PREROUTING -d адрес машины -p tcp --dport 57214 -j REDIRECT --to-ports 22в результате ssh работает только на 57214 порте, если хотите, подставьте 443 и если у вас уже чётко определены политики пропуска пакетов, в raw лучше не писать.
П.с.
Кто-нибудь знает почему такая фэншуйная цель, как REJECT не работает в цепочках PREROUTING?