URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 51206
[ Назад ]

Исходное сообщение
"В Putty делаю sh /etc/rc.firewall и полный зависюк! "

Отправлено RCOleg , 03-Дек-04 16:42 
Доброе время суток!
Захожу через Putty, вношу изменения в /etc/rc.firewall - сохраняю и пытаюсь применить #sh /etc/rc.firewall - это приводит к зависанию putty.
Захожу локально на сервак и читаю в messages-ах:
sshd[1029]: fatal: Write failed: Permission denied
Можно ли что-то подправить, чтобы получить право на применение правил ipfw через Putty? Или это запрещено из соображений безопасности?
Заранее благодарен!

Содержание

Сообщения в этом обсуждении
"В Putty делаю sh /etc/rc.firewall и полный зависюк! "
Отправлено Князь , 03-Дек-04 16:46 
-> su


"В Putty делаю sh /etc/rc.firewall и полный зависюк! "
Отправлено pva , 03-Дек-04 16:57 
>-> su

# sh /rc.firewall &


"В Putty делаю sh /etc/rc.firewall и полный зависюк! "
Отправлено RCOleg , 03-Дек-04 17:59 
>>-> su
>
># sh /rc.firewall &
Пробовал и su и чистым рутом, - результат один ЗАВИСЮК!

"В Putty делаю sh /etc/rc.firewall и полный зависюк! "
Отправлено dev , 03-Дек-04 17:13 
/usr/share/examples/ipfw/change_rules.sh

"В Putty делаю sh /etc/rc.firewall и полный зависюк! "
Отправлено Grey , 03-Дек-04 17:22 
>Доброе время суток!
>Захожу через Putty, вношу изменения в /etc/rc.firewall - сохраняю и пытаюсь применить
>#sh /etc/rc.firewall - это приводит к зависанию putty.
>Захожу локально на сервак и читаю в messages-ах:
>sshd[1029]: fatal: Write failed: Permission denied
>Можно ли что-то подправить, чтобы получить право на применение правил ipfw через
>Putty? Или это запрещено из соображений безопасности?
>Заранее благодарен!

подправить можно, но "отвал коннекта" таки произойдёт и комманда до конца не выполнится... это надо делать по крону...


"В Putty делаю sh /etc/rc.firewall и полный зависюк! "
Отправлено murz , 03-Дек-04 17:58 
#sh /etc/rc.firewall ; sleep2

"В Putty делаю sh /etc/rc.firewall и полный зависюк! "
Отправлено Grey , 03-Дек-04 18:48 
>#sh /etc/rc.firewall ; sleep2

это выходит начинаем выполнять комманду и после этого засыпаем на 2 сек? :) и что получится?


"В Putty делаю sh /etc/rc.firewall и полный зависюк! "
Отправлено Arifik , 03-Дек-04 18:52 
>>#sh /etc/rc.firewall ; sleep2
>
>это выходит начинаем выполнять комманду и после этого засыпаем на 2 сек?
>:) и что получится?

Попробуй так #nohup sh /etc/rc.firewall &



"В Putty делаю sh /etc/rc.firewall и полный зависюк! "
Отправлено Mr.Link , 03-Дек-04 19:26 
>Доброе время суток!
>Захожу через Putty, вношу изменения в /etc/rc.firewall - сохраняю и пытаюсь применить
>#sh /etc/rc.firewall - это приводит к зависанию putty.
>Захожу локально на сервак и читаю в messages-ах:
>sshd[1029]: fatal: Write failed: Permission denied
>Можно ли что-то подправить, чтобы получить право на применение правил ipfw через
>Putty? Или это запрещено из соображений безопасности?
>Заранее благодарен!
ИМХО думаю стоит ipfw default deny
и когда запускаете скрипт - все правила удаляются
и конечно коннект пропадет...
соответственно скрипт из-под root'a

"В Putty делаю sh /etc/rc.firewall и полный зависюк! "
Отправлено RCOleg , 06-Дек-04 11:31 
>ИМХО думаю стоит ipfw default deny
> и когда запускаете скрипт - все правила удаляются
>и конечно коннект пропадет...
>соответственно скрипт из-под root'a
Доброе время суток! Спасибо всем за советы!
Если подразумевается "ipfw default deny" как опция в ядре IPFIREWALL_DEFAULT_TO_ACCEPT, то она у меня действительно не установлена.
А следовательно: deny any to any.
Но вопрос то в "sshd[1029]: fatal: Write failed: Permission denied" И правила не перезаписываются вообще! Пока локально на машине не сделаю sh /etc/rc.firewall



"В Putty делаю sh /etc/rc.firewall и полный зависюк! "
Отправлено m1chaeell , 06-Дек-04 14:47 
>>ИМХО думаю стоит ipfw default deny
>> и когда запускаете скрипт - все правила удаляются
>>и конечно коннект пропадет...
>>соответственно скрипт из-под root'a
>Доброе время суток! Спасибо всем за советы!
>Если подразумевается "ipfw default deny" как опция в ядре IPFIREWALL_DEFAULT_TO_ACCEPT, то она
>у меня действительно не установлена.
>А следовательно: deny any to any.
>Но вопрос то в "sshd[1029]: fatal: Write failed: Permission denied" И правила
>не перезаписываются вообще! Пока локально на машине не сделаю sh /etc/rc.firewall
>

Дело в том, что у обычных пользователей нет прав на изменение правил фаервола. Есть два способа решения проблемы. Первый - логиниться под рутом (что не рекомендуется с точки зрения безопасности). Второй - использовать специальные утилиты, которые дают рутовские права обычным пользователям. Одна из таких утилит называется sudo. К сожалению я ею не пользовался, поэтому знаю только название.


"В Putty делаю sh /etc/rc.firewall и полный зависюк! "
Отправлено RCOleg , 06-Дек-04 16:59 

>Дело в том, что у обычных пользователей нет прав на изменение правил
>фаервола. Есть два способа решения проблемы. Первый - логиниться под рутом
>(что не рекомендуется с точки зрения безопасности). Второй - использовать специальные
>утилиты, которые дают рутовские права обычным пользователям. Одна из таких утилит
>называется sudo. К сожалению я ею не пользовался, поэтому знаю только
>название.
Да, но пардоньте, я уже и "плявал" на точку зрения безопасности (т.е. дал руту право на ssh) и просто su делал, результат один и тот же!



"В Putty делаю sh /etc/rc.firewall и полный зависюк! "
Отправлено Piros , 06-Дек-04 14:55 
>Но вопрос то в "sshd[1029]: fatal: Write failed: Permission denied" И правила
>не перезаписываются вообще! Пока локально на машине не сделаю sh /etc/rc.firewall
>
Так все правильно тебе говорят. Ты когда применяеш новые правила, тебя ipfw отбивает. У меня тоже так. Я как то эксперементировал. По ssh тоже перегружал ipfw. Таже ситуация...конект зависал. Подойдя к консоли по ipfw -a list посмотрел правила. Список содержал не все правила которые должны были принятся.


"В Putty делаю sh /etc/rc.firewall и полный зависюк! "
Отправлено RCOleg , 06-Дек-04 16:55 
> Список содержал не все правила которые должны были принятся.
1. То есть примененить правила по ssh нельзя?
2. У меня не то что не все правила были, у меня после sh /etc/rc.firewall  через ssh просто блокируется машина! И ни почты ни Инета нет! Пока из консоли не перегрузишь правила! А ребут делать нельзя, т.к. ISDN некорректно поднимается (несогласование по питанию или еще что-то, кароч дрова под фрей кривые для ISDN!).



"В Putty делаю sh /etc/rc.firewall и полный зависюк! "
Отправлено Grey , 06-Дек-04 16:59 
>> Список содержал не все правила которые должны были принятся.
>1. То есть примененить правила по ssh нельзя?
>2. У меня не то что не все правила были, у меня
>после sh /etc/rc.firewall  через ssh просто блокируется машина! И ни
>почты ни Инета нет! Пока из консоли не перегрузишь правила! А
>ребут делать нельзя, т.к. ISDN некорректно поднимается (несогласование по питанию или
>еще что-то, кароч дрова под фрей кривые для ISDN!).

Ну ведь уже сказали! выполнив свою команду ты просто убиваешь все правила и остаётся одно, которое всем deny делает, вот у тебя и не пашет ничего... такое надо делать или с консоли (т.е. филизески на роутере) или зарядить свою команду в крон на минут 5 позже текущего времени... и подождать...
Неужели этот вопрос стоит столько мусолить?! :)


"В Putty делаю sh /etc/rc.firewall и полный зависюк! "
Отправлено RCOleg , 06-Дек-04 19:05 
>Неужели этот вопрос стоит столько мусолить?! :)
Я человек простой, скажите: "Я уже с этим боролся и ничего не помогло"
Как в 12 сообщении. Вот после него больше вопросов не возникло, а 13 - это просто описание того как у меня машинка себя ведет.

*****СПАСИБО ВСЕМ ЗА УЧАСТИЕ!******
Придется кронить!


"В Putty делаю sh /etc/rc.firewall и полный зависюк! "
Отправлено Grey , 06-Дек-04 19:29 
>>Неужели этот вопрос стоит столько мусолить?! :)
>Я человек простой, скажите: "Я уже с этим боролся и ничего не
>помогло"

это ты обо мне? :) я с этим не боролся... просто один раз обжёгся и потом подумав всё понял... :)
а тут флейм развели... можно, не можно....


"В Putty делаю sh /etc/rc.firewall и полный зависюк! "
Отправлено RCOleg , 06-Дек-04 19:38 
>а тут флейм развели... можно, не можно....
А кстати рано, "...все понял", только что по тлф. общался со знакомым, у него через ssh (Putyy) все работает!? При этом ядро собрано deny (по умолчанию), и sshd конфиг оставлен по умолчанию, т.е. через su все делается.
Вот и сижу чешу репу, как енто? :-)

"В Putty делаю sh /etc/rc.firewall и полный зависюк! "
Отправлено Grey , 06-Дек-04 20:50 
>>а тут флейм развели... можно, не можно....
>А кстати рано, "...все понял", только что по тлф. общался со знакомым,
>у него через ssh (Putyy) все работает!? При этом ядро собрано
>deny (по умолчанию), и sshd конфиг оставлен по умолчанию, т.е. через
>su все делается.
>Вот и сижу чешу репу, как енто? :-)

Именно так... захожу по ssh под юзером.. потом su root, потом движения с фаерволом и обрыв коннекта... а вот если правим крон... ждём и проверяем ipfw show - всё в ажуре... если я в чём то не прав, поясните мне ситуацию...


"В Putty делаю sh /etc/rc.firewall и полный зависюк! "
Отправлено Nikola_SPb , 06-Дек-04 21:38 
>Именно так... захожу по ssh под юзером.. потом su root, потом движения
>с фаерволом и обрыв коннекта... а вот если правим крон... ждём
>и проверяем ipfw show - всё в ажуре... если я в
>чём то не прав, поясните мне ситуацию...

И первым правилом в файрволе ipfw -f flush ? ;)

Используй /usr/bin/nohup - утилиту, держащую коннект с сервером на время махинаций с фарволом

nohup /etc/rc.firewall


"В Putty делаю sh /etc/rc.firewall и полный зависюк! "
Отправлено Arifik , 06-Дек-04 21:40 
>Именно так... захожу по ssh под юзером.. потом su root, потом движения
>с фаерволом и коннект не обрывается и ядро с deny.
Повторяю, делаю nohup sh /etc/rc.firewall &
Попробуй и дай знать!

"В Putty делаю sh /etc/rc.firewall и полный зависюк! "
Отправлено RCOleg , 07-Дек-04 11:11 
>>Именно так... захожу по ssh под юзером.. потом su root, потом движения
>>с фаерволом и коннект не обрывается и ядро с deny.
>Повторяю, делаю nohup sh /etc/rc.firewall &
>Попробуй и дай знать!
Попробовал, - даю знать! Спасибо! По крайней мере правила фыревола применяются: вставляю всяку лабуду под номером 65200 сохраняю, делаю nohup sh /etc/rc.firewall получаю дисконнект, захожу еще раз ipfw show... и вот оно миленькое всяка лабуда под номером 65200! Да, но в messages все равно вижу:
Dec  7 09:59:56 rc77 sshd[388]: fatal: Write failed: Permission denied
Dec  7 10:01:08 rc77 sshd[549]: fatal: Write failed: Permission denied
Dec  7 10:05:56 rc77 sshd[633]: fatal: Write failed: Permission denied
В точности как я все делал 3 раза!


"В Putty делаю sh /etc/rc.firewall и полный зависюк! "
Отправлено dravor , 07-Дек-04 11:32 
Если вызывать как
sh /etc/rc.firewall,
то, действительно, вначале фаерволлом все коннекты запрещены и коннект из PUTTY тоже закрывается.
Но у меня правила формируются из перлового скрипта и вот когда я его из PUTTY запускаю - все ok.
В чем причина - пока разобраться не успел. Скажу только, что вначале из перла все равно выполняется команда
sh /etc/rc.firewall

"В Putty делаю sh /etc/rc.firewall и полный зависюк! "
Отправлено pva , 07-Дек-04 12:00 
ище раз повторяю

при нормально прописанных правилах  в /etc/rc.firewall (т.е. есть понимание как они в итоге работают)
даже при default - deny

# sh /etc/rc.firewall &

все чудненько отрабатывает !


"В Putty делаю sh /etc/rc.firewall и полный зависюк! "
Отправлено RCOleg , 07-Дек-04 13:00 
>ище раз повторяю
>
>при нормально прописанных правилах  в /etc/rc.firewall (т.е. есть понимание как они в итоге работают)
>даже при default - deny
А можно с этого места поподробнее плз.!
# SSH
${fwcmd} add pass tcp from 192.168.43.0/24 to 192.168.43.78 22 via ${iif}
${fwcmd} add pass tcp from 192.168.43.78 22 to 192.168.43.0/24 via ${iif}
Этого достаточно?


"В Putty делаю sh /etc/rc.firewall и полный зависюк! "
Отправлено arif , 07-Дек-04 13:21 
>Попробовал, - даю знать! Спасибо! По крайней мере правила фыревола применяются: вставляю
>всяку лабуду под номером 65200 сохраняю, делаю nohup sh /etc/rc.firewall получаю
>дисконнект, захожу еще раз ipfw show... и вот оно миленькое всяка
>лабуда под номером 65200! Да, но в messages все равно вижу:
>
>Dec  7 09:59:56 rc77 sshd[388]: fatal: Write failed: Permission denied
>Dec  7 10:01:08 rc77 sshd[549]: fatal: Write failed: Permission denied
>Dec  7 10:05:56 rc77 sshd[633]: fatal: Write failed: Permission denied
>В точности как я все делал 3 раза!

Ты nohup sh /etc/rc.firewall - с флагом & запускал ???
                                        ^


"В Putty делаю sh /etc/rc.firewall и полный зависюк! "
Отправлено RCOleg , 07-Дек-04 13:39 
>Ты nohup sh /etc/rc.firewall - с флагом & запускал ???
Да! И все равно - дисконнект, но правила применяются.


"В Putty делаю sh /etc/rc.firewall и полный зависюк! "
Отправлено tigerek , 07-Дек-04 18:10 
я делаю обычно так: nohup sh /etc/rc.firewall &


"В Putty делаю sh /etc/rc.firewall и полный зависюк! "
Отправлено Grayich , 07-Дек-04 12:00 
nohup /etc/rc.firewall

в etc/rc.firewall путь к ipfw должен быть полностью прописан
к примеру
#!/bin/sh -
fwcmd="/sbin/ipfw"
${fwcmd} -f flush
# SSH - разрешить в самом начале SSH , при этом если далее встретится где нить ошибка то SSH всеравно не отвалится
# что то вроде этого
mynet=192.168.0.0/24
        ${fwcmd} add allow tcp from ${mynet} to ${mynet} ssh via rl0
        ${fwcmd} add allow tcp from ${mynet} ssh to ${mynet} via rl0

зависание применения новых правил встречалось только при условии внесения новых или изменения старых правил DUMMYNET, PIPE или QUEUE....


"В Putty делаю sh /etc/rc.firewall и полный зависюк! "
Отправлено RCOleg , 07-Дек-04 13:47 
############
# Set quiet mode if requested
#
case ${firewall_quiet} in
[Yy][Ee][Ss])
        fwcmd="/sbin/ipfw -q"
        ;;
*)
        fwcmd="/sbin/ipfw"
        ;;
esac

############
# Flush out the list before we begin.
#
${fwcmd} -f flush
А потом моя  секция:
[Mm][Yy][Cc][Ll][Oo][Ss][Ee])
        iif="rl0"
        inet="192.168.43.0"
        imask="255.255.255.0"
        iip="192.168.43.78"
.... и т.д.
Что тут не так?


"В Putty делаю sh /etc/rc.firewall и полный зависюк! "
Отправлено Grayich , 07-Дек-04 14:38 
>############
># Set quiet mode if requested
>#
>case ${firewall_quiet} in
>[Yy][Ee][Ss])
>        fwcmd="/sbin/ipfw -q"
>        ;;
>*)
>        fwcmd="/sbin/ipfw"
>        ;;
>esac
>
>############
># Flush out the list before we begin.
>#
>${fwcmd} -f flush
>А потом моя  секция:
>[Mm][Yy][Cc][Ll][Oo][Ss][Ee])
>        iif="rl0"
>        inet="192.168.43.0"
>        imask="255.255.255.0"
>        iip="192.168.43.78"
>.... и т.д.
>Что тут не так?

попробуй в начало вставить #!/bin/sh -
и сделать его выполняемым chmod +x /etc/rc.firewall   если он конечно невыполняемый.

И правила DUMMYNET есть (queue, pipe) ?



"В Putty делаю sh /etc/rc.firewall и полный зависюк! "
Отправлено RCOleg , 07-Дек-04 19:22 
>попробуй в начало вставить #!/bin/sh -
>и сделать его выполняемым chmod +x /etc/rc.firewall   если он конечно
>невыполняемый.
>
>И правила DUMMYNET есть (queue, pipe) ?
DUMMYNET пока нет (это ограничение трафика? если да то планирую)
Файл не выплняемый, и еще информация - при открытом фиреволе вроде все работает, вероятнее всего я ПАРАНОИДАЛЬНО ЗАКРЫЛ все высокие порты ПОРТЫ, вот из-за этого и все траблы.
Но без этой паранои у меня на внешнем интерфейсе частенько появлялись пакеты типа:
TCP 69.44.59.39:1580 на 213.186.107.190:17866 in via tun0
TCP 69.44.62.25:1765 на 213.186.107.190:17866 in via tun0
TCP 69.44.59.39:3588 на 213.186.107.190:17866 in via tun0
TCP 69.44.59.39:3722 на 213.186.107.190:17866 in via tun0
Которые держали коннект, а ведь у меня диал-ап ISDN и все это денажки. Вот и пришлось прописывать deny from any 1025-65535 to any 1025-65535.
Попробую более тонко переписать стенку - результатом поделюсь.
Спасибо всем за участие!


"В Putty делаю sh /etc/rc.firewall и полный зависюк! "
Отправлено Charon , 11-Дек-04 00:04 
Проблема связана с установками фаервола default to deny, и только с этим. Я эту проблему решаю так: открываю screen, в нем sudo или su (sudo предпочтительнее) и тогда уже пишу sh /etc/firewall.sh. После этой команды putty, конечно, закрывается. Но после повторного захода на сервак я восстанавливаю свои закрытые скрины (screen -r) - и вуа-ля! на экране результат применения всех правил (если правила добавлялись без quiet).

"В Putty делаю sh /etc/rc.firewall и полный зависюк! "
Отправлено boykov , 13-Дек-04 20:55 
блин. ну сделай ты так, чтобы во время выполнения rc.firewall НИЧЕГО не выводилось на экран.
-q или там nohup или еще что... /dev/null еще есть... в файлик какой.
тогда (если все правильно в правилах) к тому моменту, когда sshd захочет что-то вывести, писАть (посылать пакеты) ему будет можно.

Однако такой способ должен применяться ТОЛЬКО на не слишком удаленных машинах. В случае, когда доступ к машине затруднен, необходимо обеспечивать восстановление первоначального (рабочего) rc.firewall и его запуск по крону через 5-10 минут.
Чтобы, если напортачил через 5-10 минут опять получить доступ. Делать это нужно по крону (не через  sleep).


"В Putty делаю sh /etc/rc.firewall и полный зависюк! "
Отправлено butcher , 14-Дек-04 10:12 
>восстанавливаю свои закрытые скрины (screen -r) - и вуа-ля! на экране
>результат применения всех правил (если правила добавлялись без quiet).
попробуйте скрипт: /usr/share/examples/ipfw/change_rules.sh