@ -392,23 +392,51 @@ NSSWITCHWINBIND=yes
## OPENSSL_GOST=yes
## Отключить виртуальные терминалы и запретить переключение на них из X11
## ACCESS_DENIED_VTX11=yes|no*|enable|disable
## ACCESS_DENIED_VTX11=yes|no*|enable|disable |y|n
## ACCESS_DENIED_VTX11=yes
## TODO https://linux.die.net/man/5/access.conf
## Блокировка доступа к терминалу
## ACCESS_GRANTED_VT=
## ACCESS_DENIED_VT=
## Управление доступом в систему, правила разрешения. /etc/security/access.conf
## Предостережение: порядок правил имеет значение. Будет применено первое подходящее правило.
## Первыми обрабатываются привила ACCESS_ALLOWED_LOGIN, после правила ACCESS_DENIED_LOGIN
## ACCESS_ALLOWED_LOGIN=rule_1,rule_2,rule_n
## Формат привила: users/groups:origins
## users/groups — с пис о к пользователей или групп пользователей или ключевое слово ALL
## origins — с пис о к TTY (для локального доступа), имен хостов, доменных имен, IP-адресов, ключевое слово ALL или LOCAL
## root:cron crond :0 tty1 tty2 tty3 tty4 tty5 tty6 vc/1 # Пользователю root разрешен доступ через cron, X11 терминал :0, tty1, ..., tty6, vc/1
## (wheel):console tty1 tty2 tty3 tty4 tty5 tty6 tty7 pts/0 pts/1 pts/2 pts/3 pts/4 pts/5 pts/6 pts/7 pts/8 pts/9 hvc0 hvc1 hvc2 hvc3 hvc4 hvc5 hvc6 hvc7 hvc8 hvc9 ttyS0 ttyS1 ttyS2 ttyS3 ttyS4 ttyS5 ttyS6 ttyS7 ttyS8 ttyS9
## root:192.168.1.1 192.168.1.4 192.168.2. 192.168.3.0/24 # Пользователю root разрешен доступ с хостов, которым принадлежат адреса IPv4
## root:127.0.0.1 ::1
## superadmin:foo1.bar.org foo2.bar.org .foo.bar.org
## @admins foo:ALL # Пользователю foo и членам администраторов сетевой группы admins разрешен доступ
## @usergroup@@hostgroup:ALL # Членам группы usergroup b uheggs [jcnjd hostgroup разрешен доступ
## DOMAIN.ORG\Domain Admins:ALL # Пользователя входящих в группу "Domain Admins" домена DOMAIN.ORG разрешен доступ
## (wheel):ALL # Членам группы wheel разрешен доступ
## ALL:LOCAL # Разрешить локальным учетным записям вход в систему локально
## ALL EXCEPT root: 192.168.0. # Разрешить всем, кроме root, входить в систему из под указанной маски сети
## ACCESS_ALLOWED_LOGIN="(users)::0 :1 :2 :3 tty2,(wheel):127.0.0.1 ::1,(wheel):ALL"
## Управление доступом в систему, правила блокировки. /etc/security/access.conf
## ACCESS_DENIED_LOGIN=rule_1,rule_2,rule_n
## root:ALL # Пользователю root должно быть отказано в доступе из всех источников
## root:ALL EXCEPT LOCAL # Запретить root вход через сеть
## wheel:ALL EXCEPT LOCAL .domain.org # Запретить нелокальный вход в привилегированные учетные записи группы wheel
## ALL EXCEPT root:tty1 # Запретить вход без полномочий root на tty1
## ALL EXCEPT superadmin:ALL # Разрешить доступ только пользователю superadmin и никому больше
## ALL EXCEPT (wheel) shutdown sync:LOCAL # Запретить вход в консоль для всех учетных записей, кроме shutdown, sync и входящих в группу wheel
## ALL EXCEPT (wheel):tty1 tty2 tty3 tty4 tty5 tty6 vc/1 localhost # Запретить вход в консоль tty для всех учетных записей, кроме входящих в группу wheel
## DOMAIN.ORG\Domain Users:ALL # Пользователя входящих в группу "Domain Users" домена DOMAIN.ORG запретить доступ
## ALL:ALL # Всем остальным пользователям запретить доступ
## ACCESS_DENIED_LOGIN="root:ALL,ALL:ALL"
## Блокировать макросы приложений
## BLOCK_APP_MACROS=yes
## Отключить влияние SUID бита на привилегии порождаемого процесса всем, кроме указанных в ACCESS_GRANTED_SUID и ACCESS_GRANTED_SGID
## ACCESS_GRANTED_SUID="/usr/bin/vmware-user-suid-wrapper,/usr/bin/Xvnc,/usr/bin/vncserver-x11,/usr/bin/veyon-auth-helper,/usr/bin/at,/usr/bin/cdda2wav,/usr/bin/cdrecord,/usr/bin/chage,/usr/bin/chfn,/usr/bin/chsh,/usr/bin/crontab,/usr/bin/cu,/usr/bin/expiry,/usr/bin/firejail,/usr/bin/fusermount,/usr/bin/fusermount-glusterfs,/usr/bin/fusermount3,/usr/bin/gpasswd,/usr/bin/ksu,/usr/bin/mount,/usr/bin/mount.cifs,/usr/bin/mount.ecryptfs_private,/usr/bin/mount.nfs,/usr/bin/newgrp,/usr/bin/passwd,/usr/bin/pkexec,/usr/bin/readcd,/usr/bin/rscsi,/usr/bin/screen-4.9.0,/usr/bin/sg,/usr/bin/su,/usr/bin/sudo,/usr/bin/umount,/usr/bin/unix_chkpwd,/usr/bin/uucico,/usr/bin/uucp,/usr/bin/uuname,/usr/bin/uustat,/usr/bin/uux,/usr/bin/uuxqt"
## ACCESS_GRANTED_SGID="/usr/bin/vmware-user-suid-wrapper,/usr/bin/x2goprint,/usr/bin/at,/usr/bin/locate,/usr/bin/mount.cifs,/usr/bin/mount.ecryptfs_private,/usr/bin/unix_chkpwd,/usr/bin/wall,/usr/bin/write"
## Отключить влияние SUID и SGID бита на привилегии порождаемого процесса всем, кроме указанных в ACCESS_ALLOWED_SUID и ACCESS_ALLOW ED_SGID
## ACCESS_ ALLOWED_SUID[/usr/bin]=vmware-user-suid-wrapper,Xvnc,vncserver-x11,veyon-auth-helper,at,cdda2wav,cdrecord,chage,chfn,chsh,crontab,cu,expiry,firejail,fusermount,fusermount-glusterfs,fusermount3,gpasswd,ksu,mount,mount.cifs,mount.ecryptfs_private,mount.nfs,newgrp,passwd,pkexec,readcd,rscsi,screen-4.9.0,sg,su,sudo,umount,unix_chkpwd,uucico,uucp,uuname,uustat,uux,uuxqt
## ACCESS_ ALLOWED_SGID[/usr/bin]=vmware-user-suid-wrapper,x2goprint,at,locate,mount.cifs,mount.ecryptfs_private,unix_chkpwd,wall,write
## Ограничить запуск интерпретаторов языков программирования в интерактивном режиме
## ACCESS_GRANTED_INTERPRETER="/usr/bin/gbr3,/usr/bin/python,/usr/bin/python2,/usr/bin/python3,/usr/bin/perl,/usr/bin/perl6,/usr/bin/php,/usr/bin/ruby,/usr/bin/bash,/usr/bin/node,/usr/bin/awk"
## ACCESS_ ALLOWED_INTERPRETER[/usr/bin]=gbr3,python,python2,python3,perl,perl6,php,ruby,bash,node,awk
## Отключить пользовательские nosuid nodev noexec на смонтированные цели
## MOUNT_ATTR[mount_point_1,mount_point_n]=attribut_1,attribut_n
@ -420,7 +448,7 @@ NSSWITCHWINBIND=yes
## MOUNT_ATTR[/tmp,/dev/shm]=nosuid,nodev,noexec
## Использовать дисковые квоты на файловые системы
## MOUNT_QUOTA[mount_point_1,mount_point_n]=attribut_1,attribut_ n
## MOUNT_QUOTA[mount_point_1,mount_point_n]=attribut_1,attribut_ 2,attribut_ n
## usrquota # Включить простые квоты на пользователя
## grpquota # Включить простые квоты на группу
## usrjquota=aquota.user # Включить журналируемые квоты на пользователя
@ -432,12 +460,11 @@ NSSWITCHWINBIND=yes
## MOUNT_QUOTA[/]=usrquota,grpquota
## Квоты на ресурсы, через cgroup2. Механизм systemd или напрямую cgroup. man 5 systemd.resource-control
## CGROUP_QUOTA[ TYPE=NAME]=PROPERTY1=VALUE,PROPERTY2=VALUE,PROPERTYn=VALUE
## CGROUP_QUOTA[ unit|user]=property_1=value,property_2=value,property_n=value
## Получить древовидный список cgroups и запущенных процессов: systemd-cgls --no-page
## Показать монторинг потребляемых ресурсов: systemd-cgtop -c; systemd-cgtop -m
## Еденицы измерения: %, K, M, G, T
## TYPE: unit, user
## slice: system.slice, user.slice, user-0.slice, user-1000.slice, smb.service, cups.service, httpd.service,
## unit: system.slice, user.slice, user-0.slice, user-1000.slice, smb.service, cups.service, httpd.service,
## user: superadmin, user-1 # Системное имя пользователя
## PROPERTY:
## MemoryHigh=200M # Мягкое ограничение О З У , юнит выходящий за рамки потребления ограничивается
@ -446,9 +473,9 @@ NSSWITCHWINBIND=yes
## CPUQuota=10% # Ограничение на использование % ЦПУ, 100% на каждый CPU. 4cpu*100%=400%
## IOReadBandwidthMax="/dev/sdb1 4M" # Ограничение операций ввода вывода на чтение блочного устройства
## IOWriteBandwidthMax="/dev/sdb1 2M" # Ограничение операций ввода вывода на запись блочного устройства
## CGROUP_QUOTA[u nit=u ser-1000.slice]="MemoryHigh=200M,MemorySwapMax=300M,CPUQuota=100%"
## CGROUP_QUOTA[ user= superadmin]="MemoryHigh=500M,MemorySwapMax=100M,CPUQuota=400%"
## CGROUP_QUOTA[ unit= smb.service]="MemoryHigh=100M,MemorySwapMax=0M,CPUQuota=100%"
## CGROUP_QUOTA[u ser-1000.slice]="MemoryHigh=200M,MemorySwapMax=300M,CPUQuota=100%"
## CGROUP_QUOTA[ superadmin]="MemoryHigh=500M,MemorySwapMax=100M,CPUQuota=400%"
## CGROUP_QUOTA[ smb.service]="MemoryHigh=100M,MemorySwapMax=0M,CPUQuota=100%"
## Управление разрешениями действий polkit, можно разрешать для группы пользователей
## POLKIT[id_object]=result:group_1,group_n"