LINUX.ORG.RU

Сделать скрипт исполняемым


0

0

Доброго времени суток, уважаемые. Решил потренировать с iptables Читал статью http://posix.ru/network/iptables/ подправил правила немного, теперь создаю файл в /etc/init.d/rc.firewall там написано сделать его исполняемым и поместить в etc/init.d/ как сделать его исполняемым, я не знаю, сохранил скрипт и поместил в init.d

Сделал «update-rc.d new.rc.iptables start 40 S . stop 89 0 6 .» что бы скрипт запускался, при включение системы. выдает xserver:/home/user# update-rc.d new.rc.iptables start 40 S . stop 89 0 6 . update-rc.d: /etc/init.d/new.rc.iptables: file does not exist Это ошибка? или всё нормально? После перезагрузки смотрю iptables -L пусто, ладно, думаю если так должно быть. Это же скрипт. Так должно быть? Спасибо.


Ответ на: комментарий от edigaryev

спасибо. поправил делаю так и вот что выводит

xserver:/home/user# update-rc.d new.rc.firewall start 40 S . stop 89 0 6 . update-rc.d: /etc/init.d/new.rc.firewall: file does not exist

Это нормально? Или это ошибка?

rext ()
Ответ на: комментарий от AITap

Подумал что может я где что не так сделал когда редактировал скрипт. Для проверки просто скопировал данные правила и всё равно так, если вы мне подскажите буду вам признателен. Спасибо.

rext ()
Ответ на: комментарий от AITap

Нет, его не было. Я всё проверил. Даже как пример при редактирование файла в редакторе nano, nano /xxx/xx/file если его нет создается пустой файл с этим именем.

rext ()
Ответ на: комментарий от rext

Попробуйте скопировать /etc/init.d/skeleton (специальная заготовка init-скрипта) в /etc/init.d/firewall и отредактировать под себя, дабы он запускал файрволл.

AITap ★★★★★ ()
Ответ на: комментарий от AITap

Спасибо сейчас попробую. Забыл напомнить система debian может формулеровка команд не подходить или ещё что и поэтому скрипт не запускается.?

rext ()

sudo chmod +x /etc/init.d/script делает его исполняемым
Как добавит в автозагрузку не помню.

Zhbert ★★★★★ ()
Ответ на: комментарий от rext

Debian, значит, init-скрипты нужно писать с помощью /etc/init.d/skeleton, и никак иначе. А rc.firewall похоже на инструкцию для slackware.

AITap ★★★★★ ()
Ответ на: комментарий от rext

>у меня нет такого каталога

В инит.д лежат скрипты, а не каталоги.

Zhbert ★★★★★ ()
Ответ на: комментарий от rext

Я же сказал: скопировать файл. Т.е. sudo cp /etc/init.d/skeleton /etc/init.d/firewall
После этого редактировать его под себя.

AITap ★★★★★ ()
Ответ на: комментарий от AITap

Спасибо, я правельно понял для запуска моего скрипта iptables нужно редактировать /etc/init.d/skeleton и поставить его на запуск?

rext ()
Ответ на: комментарий от rext

Ещё раз повторяю. Скопировать /etc/init.d/skeleton в файл /etc/init.d/firewall и редактировать _копию_. Т.е. /etc/init.d/firewall.

AITap ★★★★★ ()
Ответ на: комментарий от AITap

Это я понял только наверное не firewall что бы не запутаться, а rc.firewall? не обязательно создавать новый же, уже есть. Верно?

rext ()
Ответ на: комментарий от rext

>Это я понял только наверное не firewall что бы не запутаться, а rc.firewall? не обязательно создавать новый же, уже есть. Верно?

Нет, именно /etc/init.d/firewall

Zhbert ★★★★★ ()
Ответ на: комментарий от rext

Неправильно. rc.firewall удалите, это совсем не то, что нужно (сравните написанное вами с /etc/init.d/skeleton). Пусть будет firewall, плохо от этого никому не будет (если от этого будет плохо вам, оставьте rc.firewall, только замените его содержимое на содержимое /etc/init.d/skeleton)

AITap ★★★★★ ()
Ответ на: комментарий от Zhbert

И мне интересно почему многие пишут sudo cp /etc/init.d/skeleton /etc/init.d/firewall то есть «sudo» привыкли что многие сидят на убунте, кубунте и т. д. в дебиане вроде sudo не настроено.

rext ()
Ответ на: комментарий от AITap

Понял!

Создать firewall Скопировать skeleton >> firewall отредактировать firewall под себя.

поставить на запуск update-rc.d /etc/init.d/firewall defaults

И ok?

rext ()
Ответ на: комментарий от AITap

в дебиане вроде sudo не настроено.

su
apt-get install sudo
nano /etc/sudoers
добавляешь своего юзера, все, судо работает, ПРОФИТ!
Zhbert ★★★★★ ()
Ответ на: комментарий от AITap

>Лучше: EDITOR=nano visudo

Мб, я обычно в судоерс дописывал =)

Zhbert ★★★★★ ()
Ответ на: комментарий от Zhbert

Спасибо, я знаю и уже настроено. И обычно после установки диста, все компоненты и нужные пакеты sudo установлены.

Спасибо вам за помощь.

rext ()
Ответ на: комментарий от AITap

Спасибо сейчас узнал от вас. Огромное спасибо :)

rext ()

добавляете в /etc/network/interfaces строку pre-up /etc/iptables.rules создаете файл /etc/iptables.rules пишите в него нужные правила файрволла потом chmod 744 /etc/iptables.rules и /etc/init.d/network restart

также почитать можно об этом в /usr/share/doc/ifupdown

wlan ★★ ()
Ответ на: комментарий от wlan

Браво, единственный правильный ответ среди тысячи костылей.

AITap ★★★★★ ()
Ответ на: комментарий от AITap

>а мы пишем свои костыли.

Что, ИМХО, намного интереснее =)

Zhbert ★★★★★ ()
Ответ на: комментарий от AITap

Ещё вопросик.

/etc/iptables.rules пишите в него нужные правила

Указываю только правила, то есть

например Добавляю только $IPT -A OUTPUT -p tcp -m tcp -o $INET_IFACE --dport 25 --sport $UNPRIPORTS -j ACCEPT

Сохраняю. И всё? Спасибо

rext ()
Ответ на: комментарий от AITap

И правда нет, есть только network-meneger, network-meneger-dispatcher, networking

Подскажите как быть?

rext ()
Ответ на: комментарий от rext

$IPT -A OUTPUT -p tcp -m tcp -o $INET_IFACE --dport 25 --sport $UNPRIPORTS -j ACCEPT

если так указываете, не забудьте объявит переменные в начале скрипта

wlan ★★ ()
Ответ на: комментарий от rext

нет, именно pre-up <путь до скрипта>

# The primary network interface
iface eth0 inet static
address 192.168.3.7
netmask 255.255.255.0
gateway 192.168.3.1
pre-up /etc/iptables.rules
auto eth0

вот кусок с рабочего конфига со шлюза

wlan ★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.