Интересный проект (http://sysctl.enderunix.org/) по созданию базы описаний назначения системных sysctl-переменных для нескольких операционных систем.На сайте есть возможность добавления новых описаний, поиск по имеющимся и список рассылки.
На текущий момент представлены sysctl для FreeBSD:
- security.bsd.* - управление моделью безопасности
- security.bsd.see_other_uids, security.bsd.see_other_gids - если 1, то пользователи (группы) могут видеть чужие процессы, сокеты и т.д. через ps, netstat, procfs;
- security.bsd.conservative_signals - если 1, то некоторые сигналы запрещается посылать setuid/setgid процессам;
- security.bsd.unprivileged_proc_debug - если 1, то пользовательский процесс можно отлаживать через ptrace, procfs, ktrace и т.д..
- security.bsd.unprivileged_read_msgbuf - если 1, то пользовательский процесс может читать из системного консольного буфера сообщений;
- security.bsd.hardlink_check_uid, security.bsd.hardlink_check_gid - если 1, то пользователи могут делать hardlink только на собственные файлы;
- security.bsd.unprivileged_get_quota - если 1, пользователи могут просматривать информацию по установленным для них квотам.
- security.jail.* - ограничения для jail
- security.jail.set_hostname_allowed - если 1, то внутри jail можно поменять имя хоста;- security.jail.socket_unixiproute_only - если 1 , то сокет в jail можно создать только для доменов PF_LOCAL, PF_INET или PF_ROUTE, иначе, возвращается ошибка;
- security.jail.sysvipc_allowed - если 1, то то в jail можно получить доступ к глобальному System V IPC;
- security.jail.getfsstatroot_only - если 1, то в jail можно получить информацию (df)только о той файловой системе на которой создан jail;
- security.jail.allow_raw_sockets - если 1, то в jail можно создавать raw sockets;
- security.jail.chflags_allow - если 1, то процессы в jail могут модифицировать флаги ФС.
- net.link.ether.bridge_ipfw - если 1 и ядро собрано с опциями IPFIREWALL и BRIDGE, то позволяет использовать ipfw для трафика внутри бриджа;
- net.link.ether.ipfw - если 1, то ipfw2 позволяет фильтровать по MAC адресам;
- kern.geom.debugflags, для работы boot0cfg и подобных утилит нужно установить в 16;
- net.inet.tcp.icmp_may_rst, если 1, то TCP соединения со статусом SYN_SENT, могут быть оборваны посредством сообщения "ICMP unreachable";
- net.inet.ip.redirect - если 0, то нет реакции на ICMP REDIRECT пакеты;
- net.inet.icmp.log_redirect - если 1, то все ICMP REDIRECT пакеты отражаются в логе;
- net.inet.icmp.drop_redirect - если 1, то ICMP REDIRECT пакеты игнорируются;
- net.inet.tcp.icmp_may_rst - если 1, то игнорируются ICMP сообщения от блокировки пакета по пути;
- security.bsd.see_other_uids - если 0, пользователь может видеть только свои процессы;
- net.inet.tcp.log_in_vain, net.inet.udp.log_in_vain - если 1, отражаем в логе попытки соединения к портам, для которых нет активных сервисов;
- net.inet.tcp.blackhole - если 1, то SYN пакеты пришедшие на порты для которых нет активных сервисов, остаются без RST ответа, если 2, то на любые пакеты нет ответа (затрудняет сканирования портов);
- kern.ipc.nmbclusters - если по "netstat -m" mbufs в "peak" приближается к "max", то число сетевых буферов нужно увеличить (kern.ipc.nmbclusters=N в /boot/locader.conf);
- net.inet.ip.forwarding - если 1, то машина может форвадить пакеты между интерфейсами;
URL: http://sysctl.enderunix.org/
Новость: http://www.opennet.me/opennews/art.shtml?num=5424
Давно пора. Авторам респект.
пока что не лучше того, что говорит: sysctl -d :(
вот бы коммиттера туда заманить, чтобы всё рассказал... но не верится (иначе бы и в sysctl -d это было) :(
объема комментирования исходников.
Автору низкий поклон за труд.
Этот проэкт будет очень полезен админам.
будет ли описание sysctl для Linux?
sysctl -AИнтуитивно понятно... :-)
>будет ли описание sysctl для Linux?/usr/src/linux/Documentation/sysctl/
/usr/src/linux/Documentation/filesystems/proc.txt
Out-of-date
Есть sysctl -ad. Полезной может быть информация о переменных для которых в -d нет описания, а также подробные описания поведения системы при изменении некоторых переменных, когда оно неочевидно. Пока, информация представлена на уровне перевода sysctl -ad через какой-нибудь убогий prompt и абсолютно бесполезна.
нууу, как сказать..$ sysctl -ad | wc -l
21
$ sysctl -a | wc -l
240не очень густо, правда? :)
// wbr
У вас неправильный sysctl.% sysctl -ad | wc -l
1169
% sysctl -a | wc -l
1191Они не равны только потому, что некоторые переменные многострочные.
Другое дело, что (без описаний):% sysctl -ad | grep -v ': $' | wc -l
356Так что надо дописать описания к этим sysctl, и закоммитить. А не заниматься никому не нужным кривым переводом sysctl'й при помощи prompt'а и прочей пионерией.
Насчет sysctl -ad
далеко не ко всем переменным есть комментарии
К примеру:
vm.stats.vm.v_vnodepgsin: Vnodein pages
vm.stats.vm.v_vnodepgsout: Vnodeout pages
vm.stats.vm.v_intrans: In transit page blocking
vm.stats.vm.v_reactivated: Reactivated pages
vm.stats.vm.v_pdwakeups: Pagedaemon wakeups
vm.stats.vm.v_pdpages: Pagedaemon page scans
vm.stats.vm.v_dfree:
vm.stats.vm.v_pfree:
vm.stats.vm.v_tfree:
vm.stats.vm.v_page_size:
vm.stats.vm.v_page_count:
vm.stats.vm.v_free_reserved:
vm.stats.vm.v_free_target:
vm.stats.vm.v_free_min:
vm.stats.vm.v_free_count:
vm.stats.vm.v_wire_count:
vm.stats.vm.v_active_count:
vm.stats.vm.v_inactive_target: