Опубликован: 20.02.2006 | Уровень: специалист | Доступ: платный
Лекция 2:

Средства уровня операционной системы

Таблица 2.3. Ключи ps
Ключ Описание
A Показывает процессы всех пользователей
a Показывает все процессы пользователей, имеющие терминалы
u Показывает имя пользователя процесса
x Выводит процессы без управляющих терминалов

На листинге 2.7 приведена выдача команды ps с ключами -aux.

USER    PID %CPU %MEM  VSZ  RSS TTY STAT START TIME COMMAND
root      1  0.1  0.7 1288  484   ?    S 18:00 0:04 init [3]
root      2  0.0  0.0    0    0   ?   SW 18:00 0:00 [keventd]
root      3  0.0  0.0    0    0   ?   SW 18:00 0:00 [kapmd]
root      5  0.0  0.0    0    0   ?   SW 18:00 0:00 [kswapd]
root      6  0.0  0.0    0    0   ?   SW 18:00 0:00 [bdflush]
root      7  0.0  0.0    0    0   ?   SW 18:00 0:00 [kupdated]
root      8  0.0  0.0    0    0   ?   SW< 18:00 0:00 [mdrecoveryd]
root     12  0.0  0.0    0    0   ?   SW 18:00 0:00 [kjournald]
root    137  0.0  0.0    0    0   ?   SW 18:00 0:00 [khubd]
root    682  0.0  1.0 1412  660   ?    S 18:01 0:00 /sbin/cardmg
rpc     700  0.0  0.8 1416  532   ?    S 18:01 0:00 portmap
root    720  0.0  1.2 1640  788   ?    S 18:01 0:00 syslogd -m 0
root    757  0.0  1.8 1940 1148   ?    S 18:01 0:00 klogd -2
root    797  0.0  0.8 1336  500   ?    S 18:01 0:00 gpm -t ps/2 -m
xfs     869  0.0  5.8 5048 3608   ?    S 18:01 0:00 xfs -port -l
daemon  884  0.0  0.8 1312  504   ?    S 18:01 0:00 /usr/sbin/atd
root    928  0.0  2.0 2660 1244   ?    S 18:01 0:01 /usr/sbin/SSHd
root    949  0.0  1.5 2068  948   ?    S 18:01 0:00 xinetd -stayalive
root    951  0.0  0.7 1292  496   ?    S 18:01 0:00 /sbin/dhcpcd -h m
root   1078  0.0  1.0 1492  628   ?    S 18:01 0:00 crond
root   1132  0.0  3.4 3808 2152   ?    S 18:01 0:02 nessusd: waiting
root   1134  0.0  1.9 2276 1224   ?    S 18:01 0:00 login -- tony
tony   1494  0.0  2.6 2732 1624 tty1   S 18:29 0:00 -bash
tony   1430  0.0  2.6 2744 1636 tty1   S 18:29 0:00 bash
tony   1805  0.0  1.2 2676  796 tty1   R 18:56 0:00 ps -aux
Листинг 2.7. Выдача ps -aux

На выдаче можно видеть каждый процесс, выполняющийся в системе, вместе с его идентификатором (PID). Это важно, если вы хотите терминировать службу или произвести какие-то иные действия. По ключу -u в левом столбце выводится имя пользователя процесса. На выдаче показаны различные системные процессы, принадлежащие пользователю root. Виден также пользователь, запустивший команду ps. Если вы обнаружите, что выполняется некая загадочная служба, то ситуацию необходимо исследовать дополнительно. На выдаче присутствует служба, которая может показаться подозрительной: демон nessusd - сканер уязвимостей, рассматриваемый в "Сканеры уязвимостей" . Однако это ваша система защитных средств, поэтому его выполнение здесь вполне законно.

Можно построить конвейер из команд ps и grep, чтобы найти определенные работающие службы. Например, команда

ps -ax | grep snort

сообщит, запущен ли в вашей системе Snort, и какой у него идентификатор процесса (PID). Как и многие другие средства уровня операционной системы, команда ps полезна для всех видов деятельности по системному администрированию, а не только для обеспечения безопасности.

Клиент OpenSSH: служба защищенного терминала

Клиент OpenSSH

Автор/основной контакт: Tatu Ylonen

Web-сайт: http://www.openSSH.com

Платформы: Большинство платформ UNIX, Windows, OS/2

Лицензия: BSD

Другие web-сайты:

http://www.uni-karlsruhe.de/~ig25/SSH-faq/

http://www.SSH.com

http://kimmo.suominen.com/SSH/

SSH - настолько полезное средство, что его серверной стороне посвящен целый раздел в "Криптографические средства" . Однако я настоятельно рекомендую по возможности применять клиент SSH для интерактивного входа в систему вместо протокола Telnet или другого небезопасного метода. Вы будете использовать его так часто, что я хотел бы представить здесь некоторые основные моменты и синтаксис клиента. SSH (Secure Shell - защищенный командный интерпретатор) является средством удаленного доступа, который позволяет входить в удаленную систему защищенным образом. Ахиллесова пята большинства сетей состоит в том, что межсистемные коммуникации осуществляются в открытом виде. Можно как угодно повышать безопасность отдельных систем, но если удаленный вход в них производится с помощью небезопасной терминальной программы, злоумышленники все равно смогут перехватить ваши входные атрибуты, используя сетевой анализатор, и с их помощью без всяких усилий входить в систему. Одно из наиболее популярных средств удаленного доступа - Telnet - страдает этим недостатком. SSH решает данную проблему, шифруя все коммуникации с первого нажатия клавиши.

SSH - программа с открытыми исходными текстами, доступная почти на любой платформе. Она поставляется по умолчанию с большинством операционных систем на основе Linux. На web-сайте http://www.ssh.com имеется коммерческая версия, также с открытыми исходными текстами. Мы рассматриваем OpenSSH - свободную версию, присутствующую в большинстве дистрибутивов Linux и на прилагаемом к книге компакт-диске. Между версиями имеются небольшие различия, однако они взаимно совместимы, а большинство команд и синтаксических конструкций должны работать и там, и там.

Чтобы получить доступ к удаленной системе с помощью SSH, требуется клиент SSH на вашей стороне, а на удаленной должен быть запущен сервер SSH. Хотя SSH не так широко распространен, как Telnet, он становится все более популярным. Компания Cisco, наконец, стала устанавливать SSH на своих маршрутизаторах, хотя все еще оставляет по умолчанию включенным сервер Telnet, в то время как SSH остается необязательным.

SSH выпускается с лицензией открытых исходных текстов, которая по сути аналогична лицензии BSD. Убедитесь, что используете версию 3.6 или выше; некоторые более ранние версии имеют дефекты в реализации криптографических протоколов и поддаются взлому. На самом деле, стоит убедиться, что вы располагаете самой свежей из доступных версий, так как код постоянно улучшается, а алгоритмы совершенствуются.

SSH, помимо защищенного входа в удаленную систему, имеет ряд по-настоящему интересных применений. Его можно применять для туннелирования почти всех сервисов через зашифрованный канал между серверами (это приложение более детально обсуждается в последующих лекциях). Базовый синтаксис SSH для удаленного входа в систему таков:

ssh -l входное_имя имя_хоста

Замените входное_имя вашим входным именем на удаленной системе имя_хоста. Можно также использовать конструкцию

ssh входное_имя@имя_хоста

Поэтому, чтобы войти в систему web-сервера с именем web.example.com, используя мое имя tony, я набираю

ssh tony@web.example.com

Годится и ssh -l tony web.example.com. Если просто ввести ssh web.example.com, то сервер будет подразумевать то же имя пользователя, что и в вашей системе.

В табл. 2.4 перечислены некоторые другие опции SSH.

Таблица 2.4. Дополнительные опции SSH
Опция Описание
-c протокол Используйте конкретный криптографический протокол. Замените протокол на blowfish, 3des или des, в зависимости от криптографического алгоритма, который хотите применять. Отметим, что ваша версия SSH должна поддерживать эти алгоритмы
-p номер_порта Соединиться с заданным номером порта, а не с используемым SSH по умолчанию портом 22
-P номер_порта Использовать заданный порт, который не является частью стандартного списка собственных портов (обычно - порт с номером больше 1024). Это может быть полезно, если имеется межсетевой экран, который закрывает для коммуникаций порты с младшими номерами
-v Подробный вывод. Полезно при отладке
-q Молчаливый режим, противоположный
-C Производить сжатие зашифрованного трафика. Может быть полезно для очень медленных соединений, таких как коммутируемые, но лучше иметь при этом мощный процессор для выполнения сжатия, иначе в итоге коммуникации замедлятся
-1 Использовать только протокол SSH версии 1. Не рекомендуется по причинам, указанным в описании опции -С, но может потребоваться, если сервер, с которым вы соединяетесь, не модернизирован до версии 2
-2 Использовать протокол SSH только версии 2. Это может препятствовать соединению с некоторыми серверами
Роман Попов
Роман Попов

После прохождения курса Стандарты инфрмационной безопасности мне предложено получение Удостоверения о повышении квалификации от НИУ ВШЭ по программе Менеджмент информационной безопасности. Программа включает в себя ряд курсов которые я уже ранее проходил. Какой порядок действий в данном случае? Как прозводится перезачет результатов? И какие экщамены мне надо еще доздать чтобы получить удостоверение?

Александр Путятинский
Александр Путятинский

Добрый день по окончании данного курса выдается сертификат?

Гончик Цымжитов
Гончик Цымжитов
Россия, Санкт-Петербург
Александр Косенко
Александр Косенко
Украина, Днепропетровск