Журнал лабораторных работ

Содержание

Журнал

Вторник (11/28/06)

/dev/ttyv1
13:02:12
#vi inetd.conf
13:02:23
#vi /etc/inetd.conf
13:02:45
#/etc/rc.d/inetd restart
Stopping inetd.
Starting inetd.
13:03:28
#nmap 127.0.0.1
Starting nmap 3.81 ( http://www.insecure.org/nmap/ ) at 2006-11-28 11:03 UTC
Interesting ports on localhost.unix.nt (127.0.0.1):
(The 1661 ports scanned but not shown below are in state: closed)
PORT   STATE SERVICE
22/tcp open  ssh
25/tcp open  smtp
Nmap finished: 1 IP address (1 host up) scanned in 10.355 seconds
13:03:47
#vi /etc/inetd.conf
13c13
< #telnet	stream	tcp	nowait	root	/usr/libexec/telnetd	telnetd
---
> telnet	stream	tcp	nowait	root	/usr/libexec/telnetd	telnetd
прошла 31 минута
13:35:37
#/etc/rc.d/inetd restart
Stopping inetd.
Starting inetd.
13:35:48
#nmap 127.0.0.1
Starting nmap 3.81 ( http://www.insecure.org/nmap/ ) at 2006-11-28 11:35 UTC
Interesting ports on localhost.unix.nt (127.0.0.1):
(The 1660 ports scanned but not shown below are in state: closed)
PORT   STATE SERVICE
22/tcp open  ssh
23/tcp open  telnet
25/tcp open  smtp
Nmap finished: 1 IP address (1 host up) scanned in 10.363 seconds
13:36:03
#/etc/xinetd
bash: /etc/xinetd: No such file or directory
прошла 61 минута
14:37:09
#less /usr/local/etc/rc.d
14:37:48
#cd/usr/local/etc/rc.d
bash: cd/usr/local/etc/rc.d: No such file or directory
14:38:01
#cd/usr/local/etc/
bash: cd/usr/local/etc/: No such file or directory
14:38:25
#cd /usr/local/etc/

14:38:31
#ls
Muttrc                  ksysguarddrc            rc.d
Muttrc.dist             lynx.cfg                rsyncd.conf
a2ps-site.cfg           lynx.cfg.default        rsyncd.conf.sample
a2ps.cfg                mime.types              smb.conf.default
bonobo-activation       mtools.conf             snmp
cdrecord                mtools.conf.sample      wgetrc
cdrecord.sample         openldap                xdg
codepages               openslp                 xinetd.conf
cups                    orbit2rc                xml2Conf.sh
esd.conf                orbit2rc.default        xsltConf.sh
esd.conf.default        pam.d
fam.conf                popd.conf.default
14:38:32
#less xinetd.conf
прошло 10 минут
14:49:18
#man xinetd.conf
прошло 17 минут
15:06:45
#/usr/local/bin/nc -u 192.168.15.23 513
bash: /usr/local/bin/nc: No such file or directory
прошло >2 часов
17:17:14
#/usr/bin/nc -u 192.168.15.23 513
^C
прошло 10 минут
17:27:27
#man nc
17:28:44
#ping 192.168.15.23
PING 192.168.15.23 (192.168.15.23): 56 data bytes
64 bytes from 192.168.15.23: icmp_seq=1734 ttl=64 time=0.457 ms
^C
--- 192.168.15.23 ping statistics ---
1959 packets transmitted, 1 packets received, 99% packet loss
round-trip min/avg/max/stddev = 0.457/0.457/0.457/0.000 ms
прошло 35 минут
18:04:33
#kldload ipfw

18:05:20
#ipfw
usage: ipfw [options]
do "ipfw -h" or see ipfw manpage for details
18:05:26
#ipfw list
65535 deny ip from any to any
18:06:23
#ipfw add allow tcp from any to me dst-port 22
00100 allow tcp from any to me dst-port 22
18:07:21
#ipfw -l
ipfw: illegal option -- l
usage: ipfw [options]
do "ipfw -h" or see ipfw manpage for details
18:07:27
#ipfw list
00100 allow tcp from any to me dst-port 22
65535 deny ip from any to any
18:07:35
#ipfw 1000 add deny ip from any to me
01000 deny ip from any to me
18:09:02
#ipfw list
00100 allow tcp from any to me dst-port 22
01000 deny ip from any to me
65535 deny ip from any to any
18:09:09
#ipfw add allow tcp from any to me dst-port 22 keep-state
01100 allow tcp from any to me dst-port 22 keep-state
18:10:01
#ipfw list
00100 allow tcp from any to me dst-port 22
01000 deny ip from any to me
01100 allow tcp from any to me dst-port 22 keep-state
65535 deny ip from any to any
18:10:05
#ipfw del 00100
ipfw: DEPRECATED: 'del' matched 'delete' as a sub-string
18:10:41
#ipfw list
01000 deny ip from any to me
01100 allow tcp from any to me dst-port 22 keep-state
65535 deny ip from any to any
18:10:47
#ipfw 900 add allow any from me to any keep-state
ipfw: unrecognised option [-1] any
18:12:47
#ipfw list
01000 deny ip from any to me
01100 allow tcp from any to me dst-port 22 keep-state
65535 deny ip from any to any
18:14:04
#ipfw add 900 allow any from me to any keep-state
ipfw: unrecognised option [-1] any
18:14:32
#ipfw add 00900 allow any from me to any keep-state
ipfw: unrecognised option [-1] any
18:15:09
#ipfw add 00900 allow ip from me to any keep-state
00900 allow ip from me to any keep-state
18:15:41
#ipfw add 00900 allow tcp from me to any keep-state
00900 allow tcp from me to any keep-state
18:15:57
#ipfw list
00900 allow ip from me to any keep-state
00900 allow tcp from me to any keep-state
01000 deny ip from any to me
01100 allow tcp from any to me dst-port 22 keep-state
65535 deny ip from any to any
18:16:04
#nmap 192.168.15.25
Starting nmap 3.81 ( http://www.insecure.org/nmap/ ) at 2006-11-28 16:16 UTC
Interesting ports on fbsd5.unix.nt (192.168.15.25):
(The 1661 ports scanned but not shown below are in state: closed)
PORT   STATE SERVICE
22/tcp open  ssh
23/tcp open  telnet
Nmap finished: 1 IP address (1 host up) scanned in 10.354 seconds
18:17:05
#vi /etc/rc.conf
18:21:11
#ipfw list
00900 allow ip from me to any keep-state
00900 allow tcp from me to any keep-state
01000 deny ip from any to me
01100 allow tcp from any to me dst-port 22 keep-state
65535 deny ip from any to any
18:21:31
#ipfw list | grep -v ^65535 |sed s/^/add/ > /etc/my.firewall

18:22:42
#less /etc/my.firevall
18:22:58
#less /etc/my.firewall
18:23:23
#/etc/rc.d/ipfw restart
net.inet.ip.fw.enable: 1 -> 0
Starting divert daemons:Flushed all rules.
Firewall rules loaded.
net.inet.ip.fw.enable: 0 -> 1
18:23:54
#ping ya.ru
ping: cannot resolve ya.ru: Host name lookup failure
18:24:06
#ipfw list
65535 deny ip from any to any
18:24:22
#less /etc/my.firewall
18:24:49
#ls
Muttrc                  ksysguarddrc            rc.d
Muttrc.dist             lynx.cfg                rsyncd.conf
a2ps-site.cfg           lynx.cfg.default        rsyncd.conf.sample
a2ps.cfg                mime.types              smb.conf.default
bonobo-activation       mtools.conf             snmp
cdrecord                mtools.conf.sample      wgetrc
cdrecord.sample         openldap                xdg
codepages               openslp                 xinetd.conf
cups                    orbit2rc                xml2Conf.sh
esd.conf                orbit2rc.default        xsltConf.sh
esd.conf.default        pam.d
fam.conf                popd.conf.default
18:24:51
#vi /etc/rc.conf
18:25:56
#ipfw list
65535 deny ip from any to any
18:26:02
#vi /etc/rc.conf
18:27:11
#/etc/rc.d/ipfw restart
net.inet.ip.fw.enable: 1 -> 0
Starting divert daemons:Flushed all rules.
Line 1: bad command `add00900'
Firewall rules loaded.
net.inet.ip.fw.enable: 0 -> 1
18:27:19
#vi /etc/my.firewall
18:29:03
#/etc/rc.d/ipfw restart
net.inet.ip.fw.enable: 1 -> 0
Starting divert daemons:Flushed all rules.
Line 1: bad command `add00900'
Firewall rules loaded.
net.inet.ip.fw.enable: 0 -> 1
18:29:08
#ipfw list
65535 deny ip from any to any
18:29:18
#vi /etc/my.firewall
18:29:55
#/etc/rc.d/ipfw restart
net.inet.ip.fw.enable: 1 -> 0
Starting divert daemons:Flushed all rules.
Line 1: bad command `add00900'
Firewall rules loaded.
net.inet.ip.fw.enable: 0 -> 1
18:29:57
#vi /etc/my.firewall
1d0
< add00900 allow ip from me to any keep-state
18:30:17
#/etc/rc.d/ipfw restart
net.inet.ip.fw.enable: 1 -> 0
Starting divert daemons:Flushed all rules.
Line 1: bad command `add01000'
Firewall rules loaded.
net.inet.ip.fw.enable: 0 -> 1

Статистика

Время первой команды журнала13:02:12 2006-11-28
Время последней команды журнала18:30:17 2006-11-28
Количество командных строк в журнале60
Процент команд с ненулевым кодом завершения, %15.00
Процент синтаксически неверно набранных команд, % 6.67
Суммарное время работы с терминалом *, час 1.15
Количество командных строк в единицу времени, команда/мин 0.87
Частота использования команд
ipfw23|====================================| 36.51%
vi9|==============| 14.29%
less5|=======| 7.94%
/etc/rc.d/ipfw5|=======| 7.94%
nmap3|====| 4.76%
ping2|===| 3.17%
man2|===| 3.17%
/etc/rc.d/inetd2|===| 3.17%
nc2|===| 3.17%
ls2|===| 3.17%
/etc/my.firewall1|=| 1.59%
cd/usr/local/etc/1|=| 1.59%
cd/usr/local/etc/rc.d1|=| 1.59%
kldload1|=| 1.59%
/etc/xinetd1|=| 1.59%
cd1|=| 1.59%
sed1|=| 1.59%
grep1|=| 1.59%
____
*) Интервалы неактивности длительностью 30 минут и более не учитываются

Справка

Для того чтобы использовать LiLaLo, не нужно знать ничего особенного: всё происходит само собой. Однако, чтобы ведение и последующее использование журналов было как можно более эффективным, желательно иметь в виду следующее:
  1. В журнал автоматически попадают все команды, данные в любом терминале системы.

  2. Для того чтобы убедиться, что журнал на текущем терминале ведётся, и команды записываются, дайте команду w. В поле WHAT, соответствующем текущему терминалу, должна быть указана программа script.

  3. Команды, при наборе которых были допущены синтаксические ошибки, выводятся перечёркнутым текстом:
    $ l s-l
    bash: l: command not found
    

  4. Если код завершения команды равен нулю, команда была выполнена без ошибок. Команды, код завершения которых отличен от нуля, выделяются цветом.
    $ test 5 -lt 4
    Обратите внимание на то, что код завершения команды может быть отличен от нуля не только в тех случаях, когда команда была выполнена с ошибкой. Многие команды используют код завершения, например, для того чтобы показать результаты проверки

  5. Команды, ход выполнения которых был прерван пользователем, выделяются цветом.
    $ find / -name abc
    find: /home/devi-orig/.gnome2: Keine Berechtigung
    find: /home/devi-orig/.gnome2_private: Keine Berechtigung
    find: /home/devi-orig/.nautilus/metafiles: Keine Berechtigung
    find: /home/devi-orig/.metacity: Keine Berechtigung
    find: /home/devi-orig/.inkscape: Keine Berechtigung
    ^C
    

  6. Команды, выполненные с привилегиями суперпользователя, выделяются слева красной чертой.
    # id
    uid=0(root) gid=0(root) Gruppen=0(root)
    

  7. Изменения, внесённые в текстовый файл с помощью редактора, запоминаются и показываются в журнале в формате ed. Строки, начинающиеся символом "<", удалены, а строки, начинающиеся символом ">" -- добавлены.
    $ vi ~/.bashrc
    2a3,5
    >    if [ -f /usr/local/etc/bash_completion ]; then
    >         . /usr/local/etc/bash_completion
    >        fi
    

  8. Для того чтобы изменить файл в соответствии с показанными в диффшоте изменениями, можно воспользоваться командой patch. Нужно скопировать изменения, запустить программу patch, указав в качестве её аргумента файл, к которому применяются изменения, и всавить скопированный текст:
    $ patch ~/.bashrc
    В данном случае изменения применяются к файлу ~/.bashrc

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

    Если справочная информация о команде есть, команда выделяется голубым фоном, например: vi. Если справочная информация отсутствует, команда выделяется розовым фоном, например: notepad.exe. Справочная информация может отсутствовать в том случае, если (1) команда введена неверно; (2) если распознавание команды LiLaLo выполнено неверно; (3) если информация о команде неизвестна LiLaLo. Последнее возможно для редких команд.

  10. Большие, в особенности многострочные, всплывающие подсказки лучше всего показываются браузерами KDE Konqueror, Apple Safari и Microsoft Internet Explorer. В браузерах Mozilla и Firefox они отображаются не полностью, а вместо перевода строки выводится специальный символ.

  11. Время ввода команды, показанное в журнале, соответствует времени начала ввода командной строки, которое равно тому моменту, когда на терминале появилось приглашение интерпретатора

  12. Имя терминала, на котором была введена команда, показано в специальном блоке. Этот блок показывается только в том случае, если терминал текущей команды отличается от терминала предыдущей.

  13. Вывод не интересующих вас в настоящий момент элементов журнала, таких как время, имя терминала и других, можно отключить. Для этого нужно воспользоваться формой управления журналом вверху страницы.

  14. Небольшие комментарии к командам можно вставлять прямо из командной строки. Комментарий вводится прямо в командную строку, после символов #^ или #v. Символы ^ и v показывают направление выбора команды, к которой относится комментарий: ^ - к предыдущей, v - к следующей. Например, если в командной строке было введено:

    $ whoami
    
    user
    
    $ #^ Интересно, кто я?
    
    в журнале это будет выглядеть так:
    $ whoami
    
    user
    
    Интересно, кто я?

  15. Если комментарий содержит несколько строк, его можно вставить в журнал следующим образом:

    $ whoami
    
    user
    
    $ cat > /dev/null #^ Интересно, кто я?
    
    Программа whoami выводит имя пользователя, под которым 
    мы зарегистрировались в системе.
    -
    Она не может ответить на вопрос о нашем назначении 
    в этом мире.
    
    В журнале это будет выглядеть так:
    $ whoami
    user
    
    Интересно, кто я?
    Программа whoami выводит имя пользователя, под которым
    мы зарегистрировались в системе.

    Она не может ответить на вопрос о нашем назначении
    в этом мире.
    Для разделения нескольких абзацев между собой используйте символ "-", один в строке.

  16. Комментарии, не относящиеся непосредственно ни к какой из команд, добавляются точно таким же способом, только вместо симолов #^ или #v нужно использовать символы #=

  17. Содержимое файла может быть показано в журнале. Для этого его нужно вывести с помощью программы cat. Если вывод команды отметить симоволами #!, содержимое файла будет показано в журнале в специально отведённой для этого секции.
  18. Для того чтобы вставить скриншот интересующего вас окна в журнал, нужно воспользоваться командой l3shot. После того как команда вызвана, нужно с помощью мыши выбрать окно, которое должно быть в журнале.
  19. Команды в журнале расположены в хронологическом порядке. Если две команды давались одна за другой, но на разных терминалах, в журнале они будут рядом, даже если они не имеют друг к другу никакого отношения.
    1
        2
    3   
        4
    
    Группы команд, выполненных на разных терминалах, разделяются специальной линией. Под этой линией в правом углу показано имя терминала, на котором выполнялись команды. Для того чтобы посмотреть команды только одного сенса, нужно щёкнуть по этому названию.

О программе

LiLaLo (L3) расшифровывается как Live Lab Log.
Программа разработана для повышения эффективности обучения Unix/Linux-системам.
(c) Игорь Чубин, 2004-2008

$Id$