考试首页 | 考试用书 | 培训课程 | 模拟考场 | 考试论坛  
  当前位置:操作系统 > Unix > 文章内容
  

让FreeBSD更安全(FreeBSD安全设置)

 [ 2017年2月2日 ] 【
FreeBSD安装系统后的基本安全设置

编辑/etc/rc.conf。增加以下内容
#ee /etc/rc.conf
#关闭掉syslog使用的端口
syslogd_enable="YES"
syslogd_flags="-ss"
#挫败OS指纹识别(需要在内核中加入options TCP_DROP_SYNFIN)
tcp_drop_synfin="YES"
#ICMP重定向
icmp_drop_redirect="YES"
icmp_log_rediretc="YES"
#记录每一个企图到关闭端口的连接
log_in_vain="YES"
#系统审计功能
accounting_enable="YES"
#开机自动清空/tmp
clear_tmp_enable="YES"
#禁用内核信息提示
update_motd="NO"
#关闭nfs服务
nfs_server_enable="NO"
nsf_client_enable="NO"
portmap_enable="NO"
#关闭sendmail
sendmail_enable="NO"
sendmail_submit_enable="NO"
sendmail_outbound_enable="NO"
sendmail_msp_queue_enable="NO"
#开启磁盘配额
enable_quotas="YES"
check_quotas="YES"
删除登陆时的信息提示
#rm /etc/motd
#touch /etc/motd
#touch /etc/COPYRIGHT
#ee /etc/gettytab
default:\
:cb:ce:ck:lc:fd#1000:im=\r\在这里修改成你需要的文字\r\n\r\n:sp#1200:\
:if=/etc/issue:
禁止一般用户查看系统日志
# chmod g-w,o-r /var/log/*
# chmod 600 /etc/syslog.conf
# chmod 600 /etc/newsyslog.conf
为了防止cracker利用rootkit工具通过后门进入系统,
# chflags schg /bin/*
# chflags schg /sbin/*
把系统的核心的运行层次设置为最安全的层次
# sysctl -w kern.securelevel=2
禁止一般用户使用crontab
# echo root > /var/cron/allow
# chmod 600 /var/cron/allow
修改/etc/sysctl.conf,增加以下内容
#ee /etc/sysctl.conf
#防止ICMP广播风暴
net.inet.icmp.bmcastecho=0
net.inet.icmp.maskrepl=0
#限制系统发送ICMP速率
net.inet.icmp.icmplim=100
#安全参数,编译内核的时候加了options TCP_DROP_SYNFIN才可以用
net.inet.icmp.icmplim_output=0
net.inet.tcp.drop_synfin=1
#设置为1会帮助系统清除没有正常断开的TCP连接,这增加了一些网络带宽的使用,但是一些死掉的连接最终能被识别并清除。死的TCP连接是被拨号用户存取的系统的一个特别的问题,因为用户经常断开modem而不正确的关闭活动的连接
net.inet.tcp.always_keepalive=1
#若看到net.inet.ip.intr_queue_drops这个在增加,就要调大net.inet.ip.intr_queue_maxlen,为0最好
net.inet.ip.intr_queue_maxlen=0
#防止DOS攻击,默认为30000
net.inet.tcp.msl=7500
#接收到一个已经关闭的端口发来的所有包,直接drop,如果设置为1则是只针对TCP包
net.inet.tcp.blackhole=2
#接收到一个已经关闭的端口发来的所有UDP包直接drop
net.inet.udp.blackhole=1
#为网络数据连接时提供缓冲
net.inet.tcp.inflight.enable=1
#如果打开的话每个目标地址一次转发成功以后它的数据都将被记录进路由表和arp数据表,节约路由的计算时间,但会需要大量的内核内存空间来保存路由表
net.inet.ip.fastforwarding=0
#kernel编译打开options POLLING功能,高负载情况下使用低负载不推荐SMP不能和polling一起用
#kern.polling.enable=1
#并发连接数,默认为128,推荐在1024-4096之间,数字越大占用内存也越大
kern.ipc.somaxconn=32768
#禁止用户查看其他用户的进程
security.bsd.see_other_uids=0
#设置kernel安全级别
kern.securelevel=0
#记录下任何TCP连接
net.inet.tcp.log_in_vain=1
#记录下任何UDP连接
net.inet.udp.log_in_vain=1
#防止不正确的udp包的攻击
net.inet.udp.checksum=1
#防止DOS攻击
net.inet.tcp.syncookies=1
#仅为线程提供物理内存支持,需要256兆以上内存
#kern.ipc.shm_use_phys=1
# 线程可使用的最大共享内存
kern.ipc.shmmax=67108864
# 最大线程数量
kern.ipc.shmall=32768
# 程序崩溃时不记录
kern.coredump=0
# lo本地数据流接收和发送空间
net.local.stream.recvspace=65536
net.local.dgram.maxdgram=16384
net.local.dgram.recvspace=65536
# 数据包数据段大小,ADSL为1452。
net.inet.tcp.mssdflt=1452
# 为网络数据连接时提供缓冲
net.inet.tcp.inflight_enable=1
# 数据包数据段最小值,ADSL为1452
net.inet.tcp.minmss=1460
# 本地数据最大数量
net.inet.raw.maxdgram=65536
# 本地数据流接收空间
net.inet.raw.recvspace=65536
更改默认的加密算法为Blowfish
为了启用 Blowfish 散列,编辑 /etc/login.conf 并把 passwd_format 一行改成下面这样:
:passwd_format=blf:\
保存设置,重新创建登录数据库:
#cap_mkdb /etc/login.conf
随后需要修改每一个用户的口令,以便让这些口令都使用 Blowfish 散列值。以超级用户的身份执行下面的命令:
#passwd username (username为你的用户名)
需要修改所有用户的口令,包括root自己。
完成了这些操作之后,重新检查一下确认自己没有遗漏什么:
#more /etc/master.passwd
所有用户的口令应该以$2.开始
最后,重新配置 adduser 程序,让它在以后使用Blowfish。修改 /etc/auth.conf,找到 crypt_default 一行,改为:
crypt_default=blf
首页 1 2 尾页
本文纠错】【告诉好友】【打印此文】【返回顶部
将考试网添加到收藏夹 | 每次上网自动访问考试网 | 复制本页地址,传给QQ/MSN上的好友 | 申请链接 | 意见留言 TOP
关于本站  网站声明  广告服务  联系方式  站内导航  考试论坛
Copyright © 2007-2013 中华考试网(Examw.com) All Rights Reserved