Бруй В.В., Карлов С.В. - Linux-сервер - пошаговые инструкции - инсталляции и настройки (1077321), страница 19
Текст из файла (страница 19)
Пароль благополучно установится. Что и следовало ожидать. Максимально допустимая длина пароля (12 символов) уменьшилась на 3из-за одного специального символа "_" и двух букв в верхнем регистре "W" и "F".Таблица управления доступом входа в системуВ каталоге /etc/security находится файл access.conf, с помощью которого можно ограничить доступ для различных пользователей и IP-адресов к вашей системе.
Предположим, что у нас имеетсяLinux-сервер, к администрированию которого допущены только два пользователя – drwalbr и karlnext.Шаг 1Одним из вариантов ограничения доступа к серверу является добавление в файл/etc/security/access.conf строки:-:ALL EXCEPT root drwalbr karlnext:ALLПри этом доступ к консоли сервера будет запрещен с любой другой системы для всех пользователей,кроме root, drwalbr и karlnext. А для последних пользователей доступ будет разрешен откуда угодно.Для разрешения только удаленного доступа к серверу пользователям root, drwalbr и karlnext срабочей станции 192.168.2.99 в файл /etc/security/access.conf нужно добавить (подредактироватьпредыдущую строку):-:ALL EXCEPT root drwalbr karlnext: 192.168.2.99и добавить еще одну:-:ALL: LOCALПоследняя строка запрещает локальный доступ всех пользователей, в том числе и root.Шаг 2Для того, чтобы настройки, внесенные в файл /etc/security/access.conf, в последующем(когда вы установите OpenSSH) могли использоваться средствами удаленного администрирования SSH, вфайлы /etc/pam.d/system-auth и /etc/pam.d/sshd необходимо добавить (проверить наличие)строки:ассоuntrequired/lib/security/раm_access.soГлава 4.
Дополнительные модули аутентификации57Удаление из системы ненужных привилегированных пользователей/etc/security/console.perms,Файлбезопасностииспользуемыймодулемpam_console.so, предназначен для выделения привилегированным пользователям физической возможности использования консоли (виртуальных консолей и локальных xdm-управляемых X-сеансов).ЗАМЕЧАНИЕ Обратите внимание, что привилегированные пользователи не имеют ничего общего собычными пользователями.
Это пользователи, соответствующие устройствам, подобно дисководу, CD-ROM,сканеру, и т. п., которые в среде сетевой операционной системы также считаются пользователями.Файл /etc/security/console.perms устанавливаемый по умолчанию:## This file determines the permissions that will be given to priviledged# users of the console at login time, and the permissions to which to# revert when the users log out.# format is:#<class>=list of regexps specifying consoles or globs specifying files#file-glob|<class> perm dev-regex|<dev-class> \#revert-mode revert-owner[.revert-group]# the revert-mode, revert-owner, and revert-group are optional, and default# to 0600, root, and root, respectively.## For more information:# man 5 console.perms# file classes -- these are regular expressions<console>=tty[0-9][0-9]* vc/[0-9][0-9]* :[0-9]\.[0-9] :[0-9]<xconsole>=:[0-9]\.[0-9] :[0-9]# device classes -- these are shell-style globs<floppy>=/dev/fd[0-1]* \/dev/floppy/* /mnt/floppy*<sound>=/dev/dsp* /dev/audio* /dev/midi* \/dev/mixer* /dev/sequencer \/dev/sound/* /dev/beep<cdrom>=/dev/cdrom* /dev/cdroms/* /dev/cdwriter* /mnt/cdrom*<pilot>=/dev/pilot<jaz>=/mnt/jaz*<zip>=/mnt/pocketzip* /mnt/zip*<ls120>=/dev/ls120 /mnt/ls120*<scanner>=/dev/scanner /dev/usb/scanner*<rio500>=/dev/usb/rio500<camera>=/mnt/camera* /dev/usb/dc2xx* /dev/usb/mdc800*<memstick>=/mnt/memstick*<flash>=/mnt/flash*<diskonkey>=/mnt/diskonkey*<rem_ide>=/mnt/microdrive*<fb>=/dev/fb /dev/fb[0-9]* \/dev/fb/*<kbd>=/dev/kbd<joystick>=/dev/js[0-9]*<v4l>=/dev/video* /dev/radio* /dev/winradio* /dev/vtx* /dev/vbi* \/dev/video/*<gpm>=/dev/gpmctl<dri>=/dev/3dfx*<mainboard>=/dev/apm_bios# permission definitions<console> 0660 <floppy><console> 0600 <sound><console> 0600 <cdrom><console> 0600 <pilot>0660060006600660root.floppyrootroot.diskroot.uucp58Часть 1.
Инсталляция операционной системы Linux на сервере<console><console><console><console><console><console><console><console><console><console><console><console><console><console><console><console><xconsole><xconsole>060006000600060006000600060006000600060006000600060007000600060006000600<jaz><zip><ls120><scanner><camera><memstick><flash><diskonkey><rem_ide><fb><kbd><joystick><v4l><gpm><mainboard><rio500>/dev/console<dri>0660 root.disk0660 root.disk0660 root.disk0600 root0600 root0600 root0600 root0660 root.disk0660 root.disk0600 root0600 root0600 root0600 root0700 root0600 root0600 root0600 root.root0600 rootявляется достаточно безопасным для правильного использования системы с интерфейсом Xwindow.
Но всреде без графической оболочки пользователя (GUI – Graphical User Interface) и специальных устройств, наподобие звуковым картам, джойстикам, сканерам, Web-камерам, накопителям zip, jaz и т. д., для повышениябезопасности удалите всех несуществующих или ненужных привилегированных пользователей из файла:#file classes -- these are regular expressions<console>=tty[0-9][0-9]* vc/[0-9][0-9]* :[0-9]\.[0-9] :[0-9]#device classes -- these are shell-style globs<floppy>=/dev/fd[0-1]* \/dev/floppy/* /mnt/floppy*<cdrom>=/dev/cdrom* /dev/cdroms/* /dev/cdwriter* /mnt/cdrom*<pilot>=/dev/pilot<fb>=/dev/fb /dev/fb[0-9]* \/dev/fb/*<kbd>=/dev/kbd/dev/video/*<gpm>=/dev/gpmctl<mainboard>=/dev/apm_bios# permission definitions<console> 0660 <floppy>0660 root.floppy<console> 0600 <cdrom>0660 root.disk<console> 0600 <pilot>0660 root.uucp<console> 0600 <fb>0600 root<console> 0600 <kbd>0600 root<console> 0600 <v4l>0600 root<console> 0700 <gpm>0700 root<console> 0600 <mainboard> 0600 rootНаложение ограничений на ресурсы, выделяемые пользователям системыФайл /etc/security/limits.conf может использоваться для наложения ограничений на ресурсы (число выполняемых процессов, объем памяти и т.
д.), выделяемые пользователям системы. Файл, устанавливаемый по умолчанию, не накладывает никаких ограничений на объем ресурсов, выделяемых пользователям системы:# /etc/security/limits.conf##Each line describes a limit for a user in the form:##<domain><type> <item> <value>##Where:#<domain> can be:#- an user name#- a group name, with @group syntax#- the wildcard *, for default entry59Глава 4. Дополнительные модули аутентификации##<type> can have the two values:#- "soft" for enforcing the soft limits#- "hard" for enforcing hard limits##<item> can be one of the following:#- core - limits the core file size (KB)#- data - max data size (KB)#- fsize - maximum filesize (KB)#- memlock - max locked-in-memory address space (KB)#- nofile - max number of open files#- rss - max resident set size (KB)#- stack - max stack size (KB)#- cpu - max CPU time (MIN)#- nproc - max number of processes#- as - address space limit#- maxlogins - max number of logins for this user#- priority - the priority to run user process with#- locks - max number of file locks the user can hold##<domain><type> <item><value>##*#*#@student#@faculty#@faculty#ftp#@studentsofthardhardsofthardhard-corerssnprocnprocnprocnprocmaxlogins01000020205004# End of fileИ это, не смотря на то, что указанные ограничения существенно затруднили бы со стороны пользователей системы реализацию атак типа отказа в обслуживании.
В предположении, что все обычные пользователи вашей системы входят в группу users для установления ограничений в файл/etc/security/limits.conf добавьте следующие строки:@usershardcore0@usershardrss5000@usershardnproc30В результате для всех пользователей из группы users будет запрещено создание файлов с образамипамяти приложений, объем используемой оперативной памяти ограничится 5 МБайт, а число запускаемыхпроцессов – тридцатью.ЗАМЕЧАНИЕ При добавлении новых пользователей не забудьте указать, что они входят в группу users.Управление временем доступа к службамС помощью файла безопасности /etc/security/time.conf, в случае необходимости, можно ограничить время доступа к различным службам. Файл time.conf может быть cконфигурирован для запретадоступа ко всем или некоторым службам сервера различным пользователям.
Дополнительная селекция может осуществляться по временным интервалам, консолям, именам машин и их IP-адресам.Шаг 1Для регистрации на сервере в рабочее время только пользователей karlnext и root в файл/etc/security/time.conf добавьте следующую строку:login;tty* & !ttyp*; !root & karlnext & ; !Al0900-1900Шаг 260Часть 1. Инсталляция операционной системы Linux на сервереДля реализации возможности использования настроек в предыдущем файле в файл/etc/pam.d/system-auth и /etc/pam.d/sshd (если вы используете SSH для удаленного администрирования сервера) добавьте (проверьте наличие строки):accountrequired/lib/security/pam_time.soОграничение использования команды su rootКоманда su (substitute user) позволяет открывать сеансы под именами других пользователей системы,запускать программы и выполнять команды от их имени и с их правами доступа.Для открытия сеанса суперпользователя root используется команда:[root@drwalbr /]# su rootPassword:Авторы рекомендуют не использовать команду su, либо строго ограничить круг пользователей, которому использование этой команды разрешено.Шаг 1В файле /etc/pam.d/su раскомментируйте (добавьте строку):authrequired/lib/security/pam_wheel.so use_uidВ этом случае использование команды su будет разрешено только пользователям из специальнойгруппыШаг 2Для того, чтобы некоторый пользователь системы, например karlnext, мог использовать команду,ему в качестве дополнительной группы нужно добавить группу wheel:[root@drwalbr /]# usermod –G wheel karlnextВ файле /etc/pam.d/su имеется строка:#authsufficient/lib/security/pam_wheel.so trust use_uidраскомментировав которую, можно разрешить пользователям из группы wheel разрешить выполнять команду su root без ввода пароля.