Пишем простенький Bash-скрипт

Что делают bash-скрипты? Bash-скрипты позволяют нам вводить несколько.команд к ряду простым выполнением этого скрипта. Зачем это нужно? Представьте, что я пытаюсь закрыть все свои порты. Для этого мне нужно ввести одну и ту же команду множество раз для каждого порта. Гораздо легче создать скрипт,, который выполнит каждую из этих команд.

Начинаем bash-скрипт с команды: #!/bin/bash . Она подсказывает скрипту, где расположена bash-оболочка. Затем мы печата-. ем все команды, которые требуется выполнить:

iptables -A INPUT -р tcp —dport -j REJECT

iptables -A iNPUT -р tcp -dport -j REJECT

iptables -A INPUT -p tcp —dport -j REJECT

Естественно, нам хочется, чтобы после выполнения этих команд скрипт сообщил нам об успешном завершении. Воспользуемся командой echo:

echo Хорошая работа, мастер! Firewall построен!

Замечание: Создание скрипта для выполнения группы команд бессмысленно. Вы по-прежнему должны вводить все эти команды. Такой скрипт оправдывает себя, если вы вводите эти команды много раз, допустим, при каждом запуске компьютера.

Общие файлы /etc-директории и их использование

У всех U nix-систем имеется несколько общих или схожих файлов. Файлы, расположенные в директории /etc, создаются в основном из конфигурационных файлов и файлов системной информации. Это делает их очень важными. Не редактируйте их, если не знаете, как это делать. В свое время я покопался в одном из них, и какое-то изменение отключило меня от системы. Мне пришлось устанавливать Linux заново.

Файлы:

а) имеющие отношение к Интернету:

ftpusers — Это файл, который перечисляет всех пользователей, которым не позволен доступ к FTP-серверу. Сюда по умолчанию добавляются некоторые демоны (например, BIND, игры и POP).

Services — Этот файл перечисляет полный (или почти полный) набор служб и указывает, в каких портах они выполняются. Например, FTP, HTTP и Finger.

Netstart — Файл вышел из употребления, но все еще инсталлируется на случай, если вы решите выходить в Сеть мануально в режиме единственного пользователя.

Networks — Файл содержит базу данных ваших локальных сетей.

hosts.allow — Файл используется для IP-цепочек и ТСР-об- ложек. Файл содержит правила, на основе которых компьютер производит подключения.

hosts.equiv — Этот файл содержит базу данных доверенных узлов и пользователей, которым вы разрешаете подключаться к вашему компьютеру.

hosts.lpd — Этот файл имеет список имен узлов и 1Р-адресов, которым позволено использовать ваши службы принтеров.

inetd.conf — Этот файл содержит все демоны, которые выполняются вашим компьютером (включая деактивированные демоны). Это первая цель для хакера, потому что Unix сверяется с файлом, решая, что делать с подключением по данному порту (Sendmail, POP3, FTP).

hosts.deny — Этот файл используется набором правил для определения, каким узлам блокировать доступ к компьютеру.

б) имеющие отношение к системе:

resolv.conf — Этот файл имеет список серверов вашей DNS, который используется для приведения имен узлов к 1Р-адресам.

Modems — Этот файл является базой данных модемной конфигурации.

Motd — Видели текст, который прокручивался при регистрации вашего логина? Это тот же самый текст, что и в файле motd. Редактируя этот файл,’вы можете изменять текст, который пользователи увидят при регистрации в системе.

Aliases — Этот файл содержит все ники, используемые демоном sendmail. Он находится в /etc/mail, но для гарантии имеет ссылку на /etc.

Shells — В этом файле находится база данных оболочек, установленных на вашей системе. Пользователи имеют доступ к этим оболочкам только при доступе к FTP на сервере.

Hosts — Этот файл содержит все известные узлы в Сети.

auth.conf — Этот файл конфигурирует тип опознания, который используется системой Unix.

Пишем простенький Bash-скрипт

newsyslog.conf — Конфигурационный файл для newsyslog.

Crontab — Файл используется для планирования задач, повторяемых через некоторый интервал времени. Имеет поля для минут, часов, дней и месяцев.

csh.login — Это системный .login-файл для оболочки csh. csh.logout — Это системный файл оболочки csh для разрегис- трации.

syslog.conf — Это конфигурационный файл для программы syslog.

dhclient.conf — Файл требуемой конфигурации для клиента ISC DHCP — пустой или полностью заполненный файл указывает конфигурацию, которая устанавливается по умолчанию.

Phones — Этот файл содержит базу данных номеров удаленных узлов.

Fstab — Файл содержит конфигурацию системных частей с пиками, типами файлов и опциями, login.conf — База данных логина

usbd.conf — Конфигурационный файл для демона USB.

login.access — Это контрольная таблица доступа для логина.

dm.conf — Конфигурационный файл для программы dm.

Ttys — Это информация о терминале, которая используется при выполнении некоторых файлов.

в) имеющие отношение к пользователю: master.passwd — Этот файл похож на обычный passwd-файл, но имеет кодированные пароли во втором поле.

adduser.conf — Это конфигурационный файл для скрипта adduser, который используется для добавления пользовательских учетных записей.

adduser.message — Это сообщение, которое вы можете выбрать для отправки новым пользователям, при их первой регистрации.

Group — Это пользовательская база данных (минус пароль). Очень важный файл, который регулярно резервируется и проверяется.

Обсуждение закрыто.