|
Поиск по сайту:
Главная
О проекте
Web-мастеру
HTML & JavaScript
SSI
Perl
PHP
XML & XSLT
Unix Shell
MySQL
Безопасность
Хостинг
Другое
|
|
12.6. Команды для работы с сетью
Команды, описываемые в этом разделе, могут найти
применение при исследовании и анализе процессов передачи
данных по сети, а также могут использоваться в борьбе со спамерами.
Информация и
статистика
- host
-
Возвращает информацию об узле Интернета, по
заданному имени или IP адресу, выполняя поиск с помощью
службы DNS.
bash$ host surfacemail.com
surfacemail.com. has address 202.92.42.236
- ipcalc
-
Выводит информацию о заданном узле сети. С ключом
-h, ipcalc выполняет поиск имени хоста в
DNS, по заданному IP адресу.
bash$ ipcalc -h 202.92.42.236
HOSTNAME=surfacemail.com
- nslookup
-
Выполняет "поиск имени
узла" Интернета по заданному IP адресу. По
сути, эквивалентна командам ipcalc -h и dig -x. Команда может исполняться
как в интерактивном, так и в неинтерактивном режиме,
т.е. в пределах сценария.
bash$ nslookup -sil 66.97.104.180
nslookup kuhleersparnis.ch
Server: 135.116.137.2
Address: 135.116.137.2#53
Non-authoritative answer:
Name: kuhleersparnis.ch
- dig
-
Подобно команде nslookup, выполняет "поиск имени узла" в
Интернете.
Сравните вывод команды dig
-x с выводом команд ipcalc -h и nslookup.
bash$ dig -x 81.9.6.2
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 11649
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0
;; QUESTION SECTION:
;2.6.9.81.in-addr.arpa. IN PTR
;; AUTHORITY SECTION:
6.9.81.in-addr.arpa. 3600 IN SOA ns.eltel.net. noc.eltel.net.
2002031705 900 600 86400 3600
;; Query time: 537 msec
;; SERVER: 135.116.137.2#53(135.116.137.2)
;; WHEN: Wed Jun 26 08:35:24 2002
;; MSG SIZE rcvd: 91
- traceroute
-
Утилита предназначена для исследования топологии
сети посредством передачи ICMP пакетов удаленному узлу.
Эта программа может работать в LAN, WAN и в Интернет.
Удаленный узел может быть указан как по имени, так и по
IP адресу. Вывод команды traceroute может быть передан
по конвейеру утилитам grep или
sed, для дальнейшего анализа.
bash$ traceroute 81.9.6.2
traceroute to 81.9.6.2 (81.9.6.2), 30 hops max, 38 byte packets
1 tc43.xjbnnbrb.com (136.30.178.8) 191.303 ms 179.400 ms 179.767 ms
2 or0.xjbnnbrb.com (136.30.178.1) 179.536 ms 179.534 ms 169.685 ms
3 192.168.11.101 (192.168.11.101) 189.471 ms 189.556 ms *
...
- ping
-
Выполняет передачу пакета "ICMP ECHO_REQUEST" другой
системе в сети. Чаще всего служит в качестве
инструмента диагностики соединений, должна
использоваться с большой осторожностью.
В случае успеха, ping возвращает код завершения 0, поэтому команда ping может
использоваться в условных операторах.
bash$ ping localhost
PING localhost.localdomain (127.0.0.1) from 127.0.0.1 : 56(84) bytes of data.
Warning: time of day goes back, taking countermeasures.
64 bytes from localhost.localdomain (127.0.0.1): icmp_seq=0 ttl=255 time=709 usec
64 bytes from localhost.localdomain (127.0.0.1): icmp_seq=1 ttl=255 time=286 usec
--- localhost.localdomain ping statistics ---
2 packets transmitted, 2 packets received, 0% packet loss
round-trip min/avg/max/mdev = 0.286/0.497/0.709/0.212 ms
- whois
-
Выполняет поиск в DNS (Domain Name System). Ключом
-h можно указать какой из
whois серверов будет запрошен.
См. Пример 4-6.
- finger
-
Возвращает информацию о пользователях в сети. По
желанию, эта команда может выводить содержимое файлов
~/.plan, ~/.project и ~/.forward, указанного
пользователя.
bash$ finger
Login Name Tty Idle Login Time Office Office Phone
bozo Bozo Bozeman tty1 8 Jun 25 16:59
bozo Bozo Bozeman ttyp0 Jun 25 16:59
bozo Bozo Bozeman ttyp1 Jun 25 17:07
bash$ finger bozo
Login: bozo Name: Bozo Bozeman
Directory: /home/bozo Shell: /bin/bash
Office: 2355 Clown St., 543-1234
On since Fri Aug 31 20:13 (MST) on tty1 1 hour 38 minutes idle
On since Fri Aug 31 20:13 (MST) on pts/0 12 seconds idle
On since Fri Aug 31 20:13 (MST) on pts/1
On since Fri Aug 31 20:31 (MST) on pts/2 1 hour 16 minutes idle
No mail.
No Plan.
По соображениям безопасности, в большинстве сетей
служба finger, и
соответствующий демон, отключена.
- chfn
-
Изменяет некоторые сведения о пользователе, такие
как: полное имя, номер кабинета, телефон рабочий и
домашний. Которые обычно выводятся командой
finger.
- vrfy
-
Проверка адреса электронной почты.
Доступ к удаленным
системам
- sx, rx
-
Команды sx и
rx служат для
приема/передачи файлов на/из удаленный узел в сети, по
протоколу xmodem. Входят в состав пакета
minicom.
- sz, rz
-
Команды sz и
rz служат для
приема/передачи файлов на/из удаленный узел в сети, по
протоколу zmodem. Протокол zmodem
имеет некоторые преимущества перед протоколом
xmodem, в качестве такого
преимущества можно назвать более высокую скорость
передачи и возможность возобновления передачи, в случае
ее разрыва. Входят в состав пакета minicom.
- ftp
-
Под этим именем подразумевается утилита и протокол
передачи файлов. Сеансы ftp могут устанавливаться из
сценариев (см. Пример 17-6,
Пример A-5 и Пример A-14).
- uucp
-
Unix to
Unix copy. Это коммуникационный пакет для
передачи файлов между Unix серверами. Сценарий на языке
командной оболочки -- один из самых эффективных
способов автоматизации такого обмена.
Похоже, что с появлением Интернет и электронной
почты, uucp постепенно
уходит в небытие, однако, она с успехом может
использоваться в изолированных, не имеющих выхода в
Интернет, сетях.
- cu
-
Call Up --
выполняет соединение с удаленной системой, как простой
терминал. Эта команда является частью пакета
uucp и, своего рода,
упрощенным вариантом команды telnet.
- telnet
-
Утилита и протокол для подключения к удаленной
системе.
|
Протокол telnet небезопасен по своей
природе, поэтому следует воздерживаться от его
использования.
|
- wget
-
wget --
неинтерактивная утилита для
скачивания файлов с Web или ftp сайтов.
wget -p http://www.xyz23.com/file01.html
wget -r ftp://ftp.xyz24.net/~bozo/project_files/ -o $SAVEFILE
- lynx
-
lynx -- Web
браузер, внутри сценариев (с ключом -dump) может использоваться для
скачивания файлов с Web или ftp сайтов, в
неинтерактивном режиме.
lynx -dump http://www.xyz23.com/file01.html >$SAVEFILE
- rlogin
-
Remote login
-- инициирует сессию с удаленной системой. Эта команда
небезопасна, вместо нее лучше использовать ssh.
- rsh
-
Remote shell
-- исполняет команду на удаленной системе. Эта команда
небезопасна, вместо нее лучше использовать ssh.
- rcp
-
Remote copy --
копирование файлов между двумя машинами через сеть.
Подобно прочим r* утилитам, команда rcp небезопасна и потому,
использовать ее в сценариях нежелательно. В качестве
замены можно порекомендовать ssh или expect.
- ssh
-
Secure shell
-- устанавливает сеанс связи и выполняет команды на
удаленной системе. Выступает в качестве защищенной
замены для telnet,
rlogin, rcp и rsh. Использует идентификацию,
аутентификацию и шифрование информации, передаваемой
через сеть. Подробности вы найдете в man
ssh.
Локальная
сеть
- write
-
Эта утилита позволяет передать текст сообщения на
другой терминал (console или xterm). Разрешить или
запретить доступ к терминалу можно с помощью команды
mesg.
Поскольку команда write работает в интерактивном
режиме, то, как правило, она не употребляется в
сценариях.
Mail
- mail
-
Чтение или передача электронной почты.
Этот почтовый клиент командной строки с успехом
может использоваться в сценариях.
Пример 12-34. Сценарий, отправляющий себя
самого по электронной почте
#!/bin/sh
# self-mailer.sh: Сценарий отправляет себя самого по электронной почте
adr=${1:-`whoami`} # Если пользователь не указан, то -- себе самому.
# Вызов 'self-mailer.sh wiseguy@superdupergenius.com'
#+ приведет к передаче электронного письма по указанному адресу.
# Вызов 'self-mailer.sh' (без аргументов) -- отправит письмо
#+ пользователю, запустившему сценарий, например, bozo@localhost.localdomain.
#
# Дополнительно о конструкции ${parameter:-default},
#+ см. раздел "Подстановка параметров"
#+ в главе "К вопросу о переменных".
# ============================================================================
cat $0 | mail -s "Сценарий \"`basename $0`\" отправил себя сам." "$adr"
# ============================================================================
# --------------------------------------------
# Поздравляю!
# Этот сценарий запустила какая-то "редиска",
#+ и заставила отправить этот текст к Вам.
# Очевидно кто-то не знает
#+ куда девать свое время.
# --------------------------------------------
echo "`date`, сценарий \"`basename $0`\" отправлен "$adr"."
exit 0
- mailto
-
Команда mailto,
похожа на mail, она
также отправляет сообщения по электронной почте.
Однако, кроме этого, mailto позволяет отправлять MIME
(multimedia) сообщения.
- vacation
-
Эта утилита предназначена для автоматической
передачи ответов на электронные письма, например для
того, чтобы уведомить отправителя о том, что получатель
временно отсутствует. Работает совместно с
sendmail и не может
использоваться для передачи сообщений через
коммутируемые линии (по модему).
Назад | Вперед
Содержание (общее) | Содержание раздела | Содержание подраздела
Если Вы не нашли что искали, то рекомендую воспользоваться поиском по сайту:
|
|
|