该limits.conf文件位于/etc/security目录,可用于控制和限制系统用户的资源。 务必对所有用户设置资源限制,以防止他们执行拒绝服务攻击(进程数、内存量等)。 这些限制必须在用户登录时设置。 例如,系统上所有用户的限制可能如下所示。
编辑limits.conf文件 vi/etc/security/limits.conf并添加或更改以下行
* hard core 0
* hard rss 5000
* hard nproc 20
|
这表示禁止创建 core 文件 - core 0,将进程数限制为 20 - nproc 20,并将内存使用量限制为 5M - rss 5000,适用于除超级用户 root 之外的所有用户。 以上所有内容仅涉及通过系统登录提示符输入的用户。 通过这种配额,您可以更好地控制用户在系统上可能拥有的进程、core 文件和内存使用量。 星号 * 表示:登录服务器的所有用户。您还必须编辑/etc/pam.d/login文件,并在文件底部添加以下行
session required /lib/security/pam_limits.so
|
添加上述行后,/etc/pam.d/login文件应如下所示
#%PAM-1.0
auth required /lib/security/pam_securetty.so
auth required /lib/security/pam_pwdb.so shadow nullok
auth required /lib/security/pam_nologin.so
account required /lib/security/pam_pwdb.so
password required /lib/security/pam_cracklib.so
password required /lib/security/pam_pwdb.so nullok use_authtok md5 shadow
session required /lib/security/pam_pwdb.so
session required /lib/security/pam_limits.so
#session optional /lib/security/pam_console.so
|
最后编辑/etc/profile文件并更改以下行
改为以下内容
ulimit -S -c 1000000 > /dev/null 2<&1
|
需要进行此修改,以避免出现如下错误消息无法达到限制在登录期间.