
Linux 系统的安全设置
Root 是 Linux 系统的超级管理员账户,拥有整个系统的最高权限,可操作系统内的所有对象。一般情况下开放了对外服务的linux系统需要设置一些安全策略来保证服务器的安全,同时亦能防止系统管理员由于平时管理过程中的误操作而导致系统不可挽回的错误。 SELinux 是 Linux 内核的安全模块,Root 账户的登录权限可由 SELinux 模块进行定义。 下面就介绍如何对系统进行设定来规避一些潜在的安全风险。 安全设置思路 禁用 root 登录权限 修改 ssh 默认端口 Root 用户的禁止登录设置 useradd username #username 为你要添加的用户名称 passwd username #设置 username 的用户密码 vi /etc/ssh/sshd_config #打开 ssh 配置文件 PermitRootLogin no #在 ssh 配置文件中找到 PermitRootLogin 这项,把后面默认的 yes 修改为 no 禁止 root 用户登录 service sshd restart #重启 sshd 服务 ssh 默认端口的修改 firewall-cmd --zone=public --add-port=xxxx/tcp --permanent #系统防火墙开放需要加入的端口,xxxx 为你需要加入的端口号 firewall-cmd --reload #重新加载系统防火墙设置,使刚才加入的端口生效 systemctl restart firewalld.service #重启系统防火墙 firewall-cmd --list-ports #列出系统防火墙已开放端口,你会发现你刚才设置的端口号已经加入其中 vi /etc/ssh/sshd_config #打开 ssh 配置文件 #Port 22 #默认 ssh 登录端口,前面加#号注释掉默认的22端口 Port xxxx #xxxx 为你需要添加 ssh 登录权限的端口号 semanage port -a -t ssh_port_t -p tcp xxxx #xxxx 为你需要添加 ssh 登录权限的端口号,这一步是将端口加入到 SELinux 安全模块 semanage port -l|grep ssh #列出具有 ssh 权限的端口号,出现你设置的端口号证明向 SELinux 已经加入成功 systemctl reload sshd #重新加载 ssh 服务使刚才的设置生效 systemctl restart sshd #重启 ssh 服务 reboot #重启 ssh username@ip:port #尝试用新的端口号登录系统