2016年5月16日月曜日

RHEL7 系の slapd では SLAPD_ULIMIT_SETTINGS は使えない

RHEL6 系(CentOS 6, Scientific Linux 6 等)で、 /etc/sysconfig/slapd に
SLAPD_ULIMIT_SETTINGS="-n 4096" とか指定して too many open files の対策
をしていた人もいると思うが、RHEL7 だとこれは使えない。疑う人は
/proc/<pid>/limits で確認してみる。

この SLAPD_ULIMIT_SETTINGS は slapd が見る環境変数じゃなくて、RHEL6 系
の init.d 下のスクリプトが見てちょこちょこやってただけということで。

なので、systemd 的には ulimit -n な設定は /etc/systemd/system/slapd.service
に LimitNOFILE で定義する。ファイル編集後は systemd daemon-reload を忘れずに。

# /usr/lib/systemd/system/slapd.service を直してしまうと、おそらく update 時
# に上書きされる。これは openldap-servers の config ファイル扱いになってない。

# cp /usr/lib/systemd/system/slapd.service /etc/systemd/system/
# vi /etc/systemd/system/
  : (snip) 
[Service]
Type=forking
  : (snip)
ExecStart=/usr/sbin/slapd -u ldap -h ${SLAPD_URLS} $SLAPD_OPTIONS
LimitNOFILE=4096 
  : (snip)  

2016年5月12日木曜日

RHEL7 で xinetd から起動してるプロセスからのコア吐き

そもそも RHEL7 で xinetd 使うなってことは置いておいて、xinetd から起動している
自作のプログラムからコアが吐けない。

http://blog.urban-theory.net/2014/08/27/why_the_coredump_fails_or_removed_too_quickly

/etc/abrt/abrt-action-save-package-data.conf

いろいろ試して上記の情報で吐けるようにはなったのだが、試した中でどれがいらない
要素かわかないのでとりあえず他にやった設定全部メモ。


  • /usr/lib/systemd/system/xinetd.service に LIMITCore=infinity を追加。
  • ソース自体に下記を追加

struct rlimit rl = { RLIM_INFINITY, RLIM_INFINITY };
setrlimit(RLIMIT_CORE, &rl);


2016年5月6日金曜日

pwdMinLength 挙動メモ

OpenLDAP の ppolicy で pwdMinLength が効かないので調べた単なるメモ。
結論として、これを効かせるには pwdCheckQuality を 1 か 2 にしなきゃならん。
どこぞに userPassword がハッシュだと効かないとか書いてあったが、どうもそれは違うみたい。

とにかく pwdMinLength を有効にしたいなら pwdCheckQulity:1 (または2)にする必要あり。