LinuxForum.Fans
Тема

Открытие портов в opensuse из командной строки

Автор: vohulg 14 сообщений 6870 просмотров
#324557

Доброго дня. Подскажите как в opensuse 12 из командной строки открыть определенные tcp порты ?

#324561

see iptables or SUSEfirewall

#324567

iptables в opensuse не работает, а SUSEfirewall официально конфигурируется только через Yast

#324568
"vohulg⇓" написал:
iptables в opensuse не работает, а SUSEfirewall официально конфигурируется только через Yast

Оксюморон, однако...
Что SUSEfirewall, что Yast, в данном случае — лишь интерфейсы к iptables.

#324577

"vohulg⇓" написал:
iptables в opensuse не работает
Всегда прекрасно работал и сейчас работает. Если Вы о том, что для запуска iptables нет отдельного баш-скрипта в /etc/init.d или юнита в systemd, так это не велик труд написать его самому.
#324675

Я имею ввиду что команды напрямую к iptable, например sudo iptables -A INPUT -p tcp --dport 6880 -j ACCEPT не открывает порт 6880

#324686

"vohulg" написал:
Я имею ввиду что команды напрямую к iptable, например sudo iptables -A INPUT -p tcp --dport 6880 -j ACCEPT не открывает порт 6880
Все прекрасно открывает!
[console]onn@urfin $ sudo iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination

Chain FORWARD (policy ACCEPT)
target prot opt source destination

Chain OUTPUT (policy ACCEPT)
target prot opt source destination
onn@urfin $ sudo iptables -A INPUT -p tcp --dport 6880 -j ACCEPT
onn@urfin $ sudo iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
ACCEPT tcp -- anywhere anywhere tcp dpt:6880

Chain FORWARD (policy ACCEPT)
target prot opt source destination

Chain OUTPUT (policy ACCEPT)
target prot opt source destination
onn@urfin $
[/console]
#324709

urfin, если это и вывод из суси (а не похоже, т.к. нормальное приглашение и sudo настроен не по-идиотски), то у тебя сусевская огнестенка отключена т.к. с ней должна быть примерно такая каша:

Показать
[console]alexander@goblin-book:~> sudo /usr/sbin/iptables -L
Chain INPUT (policy DROP)
target prot opt source destination
ACCEPT all -- anywhere anywhere
ACCEPT all -- anywhere anywhere ctstate ESTABLISHED
ACCEPT icmp -- anywhere anywhere ctstate RELATED
input_ext all -- anywhere anywhere
LOG all -- anywhere anywhere limit: avg 3/min burst 5 LOG level warning tcp-options ip-options prefix "SFW2-IN-ILL-TARGET "
DROP all -- anywhere anywhere

Chain FORWARD (policy DROP)
target prot opt source destination
LOG all -- anywhere anywhere limit: avg 3/min burst 5 LOG level warning tcp-options ip-options prefix "SFW2-FWD-ILL-ROUTING "

Chain OUTPUT (policy ACCEPT)
target prot opt source destination
ACCEPT all -- anywhere anywhere

Chain forward_ext (0 references)
target prot opt source destination

Chain input_ext (1 references)
target prot opt source destination
ACCEPT udp -- anywhere anywhere PKTTYPE = broadcast udp dpt:mdns
DROP all -- anywhere anywhere PKTTYPE = broadcast
ACCEPT icmp -- anywhere anywhere icmp source-quench
ACCEPT icmp -- anywhere anywhere icmp echo-request
ACCEPT udp -- anywhere anywhere udp spt:netbios-ns ctstate RELATED
LOG tcp -- anywhere anywhere limit: avg 3/min burst 5 tcp dpt:ssh flags:FIN,SYN,RST,ACK/SYN LOG level warning tcp-options ip-options prefix "SFW2-INext-ACC-TCP "
ACCEPT tcp -- anywhere anywhere tcp dpt:ssh
ACCEPT udp -- anywhere anywhere udp dpt:mdns
DROP all -- anywhere anywhere PKTTYPE = multicast
DROP all -- anywhere anywhere PKTTYPE = broadcast
LOG tcp -- anywhere anywhere limit: avg 3/min burst 5 tcp flags:FIN,SYN,RST,ACK/SYN LOG level warning tcp-options ip-options prefix "SFW2-INext-DROP-DEFLT "
LOG icmp -- anywhere anywhere limit: avg 3/min burst 5 LOG level warning tcp-options ip-options prefix "SFW2-INext-DROP-DEFLT "
LOG udp -- anywhere anywhere limit: avg 3/min burst 5 ctstate NEW LOG level warning tcp-options ip-options prefix "SFW2-INext-DROP-DEFLT "
DROP all -- anywhere anywhere

Chain reject_func (0 references)
target prot opt source destination
REJECT tcp -- anywhere anywhere reject-with tcp-reset
REJECT udp -- anywhere anywhere reject-with icmp-port-unreachable
REJECT all -- anywhere anywhere reject-with icmp-proto-unreachable
[/console]

vohulg, если надо сделать аккуратно и чтобы изменения сохранялись, то я бы смотрел в сторону следующих файлов (для 12.3):
/etc/sysconfig/SuSEfirewall2
/etc/sysconfig/scripts/SuSEfirewall2-custom

#324721

Fat-Zer, естественно, что SUSEfirewall отключен, раз и навсегда :)

"Fat-Zer⇓" написал:
а не похоже, т.к. нормальное приглашение и sudo настроен не по-идиотски
cat /etc/*release*
[console]onn@urfin $ cat /etc/*release*
LSB_VERSION="core-2.0-noarch:core-3.2-noarch:core-4.0-noarch:core-2.0-ia32:core-3.2-ia32:core-4.0-ia32"
cat: /etc/lsb-release.d: Это каталог
NAME=openSUSE
VERSION="12.3 (Dartmouth)"
VERSION_ID="12.3"
PRETTY_NAME="openSUSE 12.3 (Dartmouth) (i586)"
ID=opensuse
ANSI_COLOR="0;32"
CPE_NAME="cpe:/o:opensuse:opensuse:12.3"
openSUSE 12.3 (i586)
VERSION = 12.3
CODENAME = Dartmouth
onn@urfin $[/console]
lsb_release -a
[console]onn@urfin $ lsb_release -a
LSB Version: core-2.0-noarch:core-3.2-noarch:core-4.0-noarch:core-2.0-ia32:core-3.2-ia32:core-4.0-ia32:desktop-4.0-ia32:desktop-4.0-noarch:graphics-2.0-ia32:graphics-2.0-noarch:graphics-3.2-ia32:graphics-3.2-noarch:graphics-4.0-ia32:graphics-4.0-noarch
Distributor ID: openSUSE project
Description: openSUSE 12.3 (i586)
Release: 12.3
Codename: Dartmouth
onn@urfin $[/console]
Приглашение легко правится на любой вкус и цвет. Так же легко настроить беспарольный sudo.
#324740
"urfin⇓" написал:
Fat-Zer, естественно, что SUSEfirewall отключен, раз и навсегда

дык, как я понял ТС ищет, как это сделать не отключая сусевского «помощника»...


[оффтоп]

"urfin⇓" написал:
Так же легко настроить беспарольный sudo.

я про то, что у него какая-то проблема с поиском путей... хотя я ничего криминального в /etc/sudoers не заметил... ну если только то, что всем разрешено делать всё.... но к делу не относится...

text
alexander@goblin-book:~> sudo ifconfig
sudo: ifconfig: command not found
alexander@goblin-book:~> sudo /sbin/ifconfig
eth0      Link encap:Ethernet  HWaddr E8:11:32:93:2F:08
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)
..........
alexander@goblin-book:~> sudo grev -v '^#\|^\s*$' /etc/sudoers
sudo: grev: command not found
alexander@goblin-book:~> sudo grep -v '^#\|^\s*$' /etc/sudoers
Defaults always_set_home
Defaults env_reset
Defaults env_keep = "LANG LC_ADDRESS LC_CTYPE LC_COLLATE LC_IDENTIFICATION LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER LC_TELEPHONE LC_TIME LC_ALL LANGUAGE LINGUAS XDG_SESSION_COOKIE"
Defaults !insults
ALL     ALL=(ALL) ALL   # WARNING! Only use this together with 'Defaults targetpw'!
root ALL=(ALL) ALL
#324742

Fat-Zer, просто я добавил в .bashrc строчку

text
export PATH=/sbin:/usr/sbin:/usr/local/sbin:$PATH

"Fat-Zer⇓" написал:
дык, как я понял ТС ищет, как это сделать не отключая сусевского «помощника»...
Если ТС раньше настроил SUSEfirewall, то довольно странно, что сейчас не может просто добавить необходимое правило. Тут ему поможет только вдумчивое чтение wiki. А если ему не нужен SUSEfirewall, то пусть запретит его запуск и использует iptables, iptables-store и iptables-restore.
#324761
"urfin⇓" написал:
Если ТС раньше настроил SUSEfirewall, то довольно странно, что сейчас не может просто добавить необходимое правило.

дык, раньше он через гуйню настраивал, а сейчас потребовалось из консоли, возможно скриптом...
в общем мне хватит фантазировать... пусть ТС сам отвечает...

"urfin⇓" написал:
Если ТС раньше настроил SUSEfirewall, то довольно странно, что сейчас не может просто добавить необходимое правило. Тут ему поможет только вдумчивое чтение wiki.

в вике написано не много... да и в доках практически пусто...
2ТС: кстати, конкретный «сервис» можно открыть через /sbin/SuSEfirewall2.

"urfin⇓" написал:
просто я добавил в .bashrc строчку

не особо красивое решение... да и непонятно, почему без неё не работает...

#324768

"Fat-Zer⇓" написал:
не особо красивое решение... да и непонятно, почему без неё не работает...
Нормальное решение, в гробу я видал каждый раз писать команду с полным путем. А не работает без этого решения, потому что для обычного пользователя пути /sbin, /usr/sbin, /usr/local/sbin не заданы по умолчанию, а по команде sudo происходит только повышение привилегий локального пользователя для выполнения определенной команды или программы, но пользовательское окружение при этом не меняется.
#324783
"urfin⇓" написал:
А не работает без этого решения, потому что для обычного пользователя пути /sbin, /usr/sbin, /usr/local/sbin не заданы по умолчанию, а по команде sudo происходит только повышение привилегий локального пользователя для выполнения определенной команды или программы, но пользовательское окружение при этом не меняется.

/sbin на то и sbin, что у обычного юзера не должен быть в PATH'е...
пользовательское то окружение меняется, но почему-то само sudo ищет программу по PATH'у вызывающего пользователя, а не по вызываемого...

[added]
нашёл... надо добавить в sudoers
Defaults secure_path = "/cбла:/бла/cбла:итп"
в генте это при компиляции задаётся... если не забуду, то надо в гентушную багзиллу отписаться, чтоб в sudoers перенесли...

Войдите или зарегистрируйтесь, чтобы ответить.