高性能linux服务器构建-1服务器安全运维

账户和登录安全

删除特殊用户和用户组

可删除不用的系统默认用户,如apache等

或者对不用的用户禁用登录权限 usermode -s /sbin/nologin nagios

禁用前用户可正常登录

禁用后无法再登录

关闭系统不必要服务

ubuntu可用systemctl redhat可以用chkconfig --level 345 service_name off

密码安全策略

linux有两种远程登陆方式:密码认证和密钥认证。密钥认证一般使用secureCRT和SSH服务实现,SSH全称是Secure SHell,SecureCRT是一个SSH客户端,如果希望远程登入服务器,服务器必须运行ssh(sshd)服务

密钥认证思路是先在客户端ssh-keygen生成公私钥对,再用ssh-copy-id(或者ssh-keygen -i导入公钥文件)将公钥拷贝到服务端,在服务端配下ssh服务允许密钥认证,重启ssh/sshd服务,然后登录就可以走密钥认证

是否启用publickey认证

publickey文件路径

是否使用口令认证

合理使用su和sudo

sudo命令通过/etc/sudoers进行授权

普通用户即使使用sudo命令也无法查看某些文件

可修改/etc/sudoers或/etc/sudoers.d/下新增文件添加普通用户的特殊命令权限

sudo第一次会提示输入当前用户密码(不是root用户的密码),密码正确输入后,会有一个默认时长的免密时间,时间内再执行sudo不用输密码,超过时间则需再次输入密码

如果希望特殊命令通过sudo执行不用输入密码,可如下配置

如果希望普通用户拥有超级用户的所有权限,有不用输入密码,可如下配置

删减ssh登入系统欢迎信息

默认登录信息

登录提示信息在/etc/issue, /etc/issue.net, /etc/redhat-release(ubuntu是/etc/update-motd.d), /etc/motd等文件中可修改

对比上述文件

一个案例,黑客入侵一台服务器,服务器给出欢迎登陆的信息,因此法院不做任何判决

远程访问与认证安全

不用telnet而使用ssh

telnet是一种早期登录认证服务,网络上会用明文传输口令和数据,这些内容可以被截获,现在很少用telnet 更多使用ssh。ssh会加密传输的数据,而且通过网络传输的数据经过压缩

合理使用shell命令历史记录功能

有的os命令历史记录只会记录命令,不会记录时间等,这些可改/etc/bashrc进行配置

启动tcp_wrapper防火墙

linux有两层防火墙,第一层是iptables或firewall,第二层是tcp_wrapper(ubuntu里叫libwrap)

tcp_wrapper通过修改/etc/hosts.allow和/etc/hosts.deny即可实现功能

tcp_wrapper会先在hosts.allow里找符合条件的主机,找到则不继续在hosts.deny中找,如果hosts.allow中找不到,则会在hosts.deny中找。所以一般可以这样设置,在hosts.allow中设置白名单,在hosts.deny中设置某个服务所有主机都禁止

文件系统安全

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值