Электронная библиотека
Хакер
Xakep Online -> Журнал, номер #011, стр. 011-050-2
Для этого подредактируем файл /etc/passwd таким образом:
ppp:x:351:230:pppclient:/home/ppp:/usr/sbin/pppd.
Пользователь ppp теперь в шелл не сможет зайти :). Зато автоматически запускается pppd.
Для того чтобы с тобой мог соединяться юзер из Win, ему нужно настроить звонилку так, чтобы после соединения открылось окно терминала, логин и пароль вводить вручную.
Но многим неудобно вводить логин и пароль вручную, и чтобы от этого избавиться, можно использовать на сервере AutoPPP. То есть при соединении пользователь сразу получает ppp.
Часто mgetty уже откомпилирована с использованием AutoPPP; если у тебя все-таки что-то не пашет, то перекомпилируй его, а перед компиляцией сделай изменения чего-то там около 110 строки:
CFLAGS=-02 -Wall -pipe -DAUTO PPP.
После компиляции осталось изменить кое-какие настройки в /etc/mgetty/login.config.
Пропиши в нем
/AutoPPP/ - /usr/sbin/pppd file /etc/ppp/options.server.
Отлично - теперь все должно работать. Хотя нет, постой... Давай-ка разберемся с настройками pppd:
Обычно файл /etc/ppp/options.server выглядит так:
-detach
asyncmap 0
modem
crtscts
lock
proxyarp
ms-dns aa.bb.cc.dd
ms-dns ee.ff.gg.hh
-detach - означает не запрещать запускать в бэкграунд процесс
asyncmap 0 - разрешить pppd работать с rlogin/telnet
modem - используем модем
crtscts - ну, понятно - hardware flow control
И последние - DNS.
Для того чтобы включить PAP авторизацию, добавь в файл /etc/ppp/options.server
require-pap
refuse-chap
В этом случае при соединении сервер будет сверять логин и пароль пользователя с логинами файла /etc/ppp/pap-secrets. А выглядит он так:
#user server secret addrs
satan * password *
Но неудобно в отдельный файл прописывать пользователей и пароли, можно сделать и так, чтобы при авторизации PAP брал пароли из /etc/shadow. Для этого нужно добавить опцию login в файл /etc/ppp/options.server. И в конце он у нас будет выглядеть таким образом :)
-detach
asyncmap 0
modem
crtscts
lock
require-pap
refuse-chap
login
proxyarp
ms-dns aa.bb.cc.dd
ms-dsn ee.ff.gg.hh
Ну и pap-secrets файлик в принципе пригодится, например, вырубить пользователя на часик нужно, прикрыв ему ppp доступ :). Не будем изменять /etc/passwd и /etc/shadow, а в pap.secrets пропишем такую строчку:
satan * - *
Ну вот и все! :) Поздравляю, теперь ты можешь забацать своего провайдера, если у тебя выделенка и свободная телефонная линия.
Безопасность Linux, часть 2
Физический доступ
Часто тебе нужно бояться не взломщиков из сети а локальных взломщиков, то есть сотрудников фирмы, где ты работаешь, или друзей, которые так и норовят напоить тебя дома и стащить всю нужную им информацию ;).
Поэтому следует защитить сервер или рабочую станцию от локального взлома.
Например, если у тебя не запаролен BIOS, то можно легко поставить загрузку с cdrom или флопи диска, загрузиться, используя загрузочный диск, и без пароля попасть в твою систему. Допустим, что твоя рабочая станция на RedHat, тогда берем диск с RedHat, вставляем его в cdrom, ставим загрузку с cdrom, выбираем не install, а upgrade, ничего не апгрейдим, а просто меняем пароль, выходим из инсталляции, заходим в Redhat с новым паролем и берем то что нужно.