Shell Script (Bash)

На самом деле это единственный раздел про unix на этом форуме

Модераторы: /dev/random, Модераторы разделов

Ответить
ExMike
Сообщения: 34
ОС: MyLinux

Shell Script

Сообщение ExMike »

Написал скриптик

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

#!/bin/bash
IPT='/usr/sbin/iptables'
IP='192.168.0.1'
AC="-A INPUT -p tcp --dport 80 -s $IP -j ACCEPT"
REJ="-A INPUT -p tcp --dport 80 -j REJECT"
$IPT -F
$IPT $AC
$IPT $REJ

Как сделать правильно цикл,что бы не только 192.168.0.1 доступ,но и 192.168.0.6 выбранным айпи короче говоря.
Дело в том что через запятую или же пробел нельзя сделать,iptables как коммандный аргумент это принимают.
А если вот сделать например на новой строке?
То надо сделать цикл while($IP = "\n) либо как его правильно сделать что бы он добавил в iptables айпи которые будут в переменной IP
Спасибо сказали:
Аватара пользователя
diesel
Бывший модератор
Сообщения: 5989
ОС: OS X, openSuSE, ROSA, Debian
Контактная информация:

Re: Shell Script

Сообщение diesel »

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

diesel@debian:~$ ip="192.168.1.1 192.168.1.2"; for i in $ip; do echo "-A INPUT -p tcp --dport 80 -s $IP -j $i"; done
-A INPUT -p tcp --dport 80 -s  -j 192.168.1.1
-A INPUT -p tcp --dport 80 -s  -j 192.168.1.2


diesel@debian:~$ ip="192.168.1.1
> 192.168.1.2
> 192.168.1.3"; echo "$ip"| while read i; do echo "-A INPUT -p tcp --dport 80 -s $IP -j $i"; done
-A INPUT -p tcp --dport 80 -s  -j 192.168.1.1
-A INPUT -p tcp --dport 80 -s  -j 192.168.1.2
-A INPUT -p tcp --dport 80 -s  -j 192.168.1.3


UPD: ну и да если еще надо примеров: BASH Scripting
Спасибо сказали:
ExMike
Сообщения: 34
ОС: MyLinux

Re: Shell Script

Сообщение ExMike »

пасип)
Спасибо сказали:
Ответить