При запуске ipfw выдает ошибку bad command `if'

Простые/общие вопросы по UNIX системам. Спросите здесь, если вы новичок

Модераторы: vadim64, terminus

Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Oleg_M
рядовой
Сообщения: 25
Зарегистрирован: 2013-09-23 12:53:30

При запуске ipfw выдает ошибку bad command `if'

Непрочитанное сообщение Oleg_M » 2013-10-18 15:41:58

Добрый день.
Помогите пожалуйста устранить ошибку при старте ipfw, с какого то перепугу заругался на стандарно прописанную строку в конфиге

Код: Выделить всё

Line 36: bad command `if'
вот текст на который собственно заругалось:
Файл rc.firewall

Код: Выделить всё

# Suck in the configuration variables.
if [ -z "${source_rc_confs_defined}" ]; then
<------>if [ -r /etc/defaults/rc.conf ]; then
<------><------>. /etc/defaults/rc.conf
<------><------>source_rc_confs
<------>elif [ -r /etc/rc.conf ]; then
<------><------>. /etc/rc.conf
<------>fi
fi
Немножко коментария:
1. Файрвол подымаю на штатном ipfw
2. Дефолтный конфиг решил не затирать как это обычно делают, а дописать к нему свои правила (почитал что в нем уже настроено и решил что эти правила очень полезны и некоторые из них не описаны в инструкциях админов)
3. в rc.conf дописал:

Код: Выделить всё

###################################
# Назначение интерфейсов для ipfw #
###################################
iif="wlan0"<---># Inside interface (внутренний)
oif="rl0"<-----># Outside interface (внешний)

firewall_enable="YES"
firewall_type="/etc/rc.firewall"
firewall_logging="YES" 
П.С.
Не судите строго, я только начал работать в юниксе
Последний раз редактировалось f_andrey 2013-10-18 19:56:39, всего редактировалось 1 раз.
Причина: Автору. пожалуйста, выбирайте соответствующий раздел форума.

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
FreeBSP
майор
Сообщения: 2020
Зарегистрирован: 2009-05-24 20:20:19
Откуда: Москва

Re: При запуске ipfw выдает ошибку bad command `if'

Непрочитанное сообщение FreeBSP » 2013-10-18 15:50:40

grep firewall_ /etc/defaults/rc.conf
там комеенты почитать надо
Человек начинает получать первые наслаждения от знакомства с unix системами. Ему нужно помочь - дальше он сможет получать наслаждение самостоятельно ©
Ламер — не желающий самостоятельно разбираться. Не путать с новичком: ламер опасен и знает это!

Oleg_M
рядовой
Сообщения: 25
Зарегистрирован: 2013-09-23 12:53:30

Re: При запуске ipfw выдает ошибку bad command `if'

Непрочитанное сообщение Oleg_M » 2013-10-18 16:35:18

в нем:

Код: Выделить всё

##############################################################
### Define source_rc_confs, the mechanism used by /etc/rc.* ##
### scripts to source rc_conf_files overrides safely.       ##
##############################################################

if [ -z "${source_rc_confs_defined}" ]; then
        source_rc_confs_defined=yes
        source_rc_confs () {
                local i sourced_files
                for i in ${rc_conf_files}; do
                        case ${sourced_files} in
                        *:$i:*)
                                ;;
                        *)
                                sourced_files="${sourced_files}:$i:"
                                if [ -r $i ]; then
                                        . $i
                                fi
                                ;;
                        esac
                done
        }
fi
Может этот скрипт мне нужно было скопировать в /etc/rc.conf или тот который приведен в конфиге файрвола?

Oleg_M
рядовой
Сообщения: 25
Зарегистрирован: 2013-09-23 12:53:30

Re: При запуске ipfw выдает ошибку bad command `if'

Непрочитанное сообщение Oleg_M » 2013-10-18 17:39:42

Закомпилил скрипт в конфиге файрвола и тот запустился, но правила не применились

Код: Выделить всё

# ipfw show
00100     0       0 allow ip from any to any via lo0
00200     0       0 deny ip from any to 127.0.0.0/8
00300     0       0 deny ip from 127.0.0.0/8 to any
00400     0       0 deny ip from any to ::1
00500     0       0 deny ip from ::1 to any
00600     0       0 allow ipv6-icmp from :: to ff02::/16
00700     0       0 allow ipv6-icmp from fe80::/10 to fe80::/10
00800     0       0 allow ipv6-icmp from fe80::/10 to ff02::/16
00900     0       0 allow ipv6-icmp from any to any ip6 icmp6types 1
01000     0       0 allow ipv6-icmp from any to any ip6 icmp6types 2,135,136
65535 56574 6922675 allow ip from any to any
Что я делаю не так, где на сервере нужно подправить?

Oleg_M
рядовой
Сообщения: 25
Зарегистрирован: 2013-09-23 12:53:30

Re: При запуске ipfw выдает ошибку bad command `if'

Непрочитанное сообщение Oleg_M » 2013-10-18 18:12:12

Ну с первой ошибкой разобрался, нужно было писать:

Код: Выделить всё

firewall_script="/etc/rc.firewall"
firewall_flags=""
Теперь осталось разобраться почему применились такие права, а не те которые я ему прописал.

Oleg_M
рядовой
Сообщения: 25
Зарегистрирован: 2013-09-23 12:53:30

Re: При запуске ipfw выдает ошибку bad command `if'

Непрочитанное сообщение Oleg_M » 2013-10-18 18:53:44

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