我经常用的Linux发行版是CentOS,所以这里先介绍下CentOS下一般需要我们做的几点安全性配置。可以先参考我的另一篇文章:检查Linux服务器是否被入侵,检查SSH是否被扫文章源自JAVA秀-https://www.javaxiu.com/490.html
一、添加用户,修改密码
1、给root用户设置密码 passwd root //会让输入新密码,控制台不会显示,直接输入回车就好 2、给Linux添加普通用户 adduser **** //****代表新用户名 3、给新用户设置密码 passwd **** //****代表新用户名 4、普通用户切换到root用户 su root //会让输入root密码,回车便是root用户了
二、禁止root用户登录
修改/etc/ssh/sshd_config
文件,将文章源自JAVA秀-https://www.javaxiu.com/490.html
vi /etc/ssh/sshd_config //可以用vi编辑,也可以用WinSCP远程连接上服务器直接修改sshd_config文件 #PermitRootLogin yes
修改为文章源自JAVA秀-https://www.javaxiu.com/490.html
PermitRootLogin no
修改时注意前面的#
注释符。 同时不要忘记重新启动sshd
服务。 禁止以后,就只能使用前面你添加的普通用户登录了,登录后若需要root
权限,可以使用su
切换到root
用户。或者配置sudo
使普通用户使用某些root
权限。文章源自JAVA秀-https://www.javaxiu.com/490.html
三、开启Linux防火墙
可以参考我的另一篇文章:CentOS(Linux) firewall 防火墙的设置与命令文章源自JAVA秀-https://www.javaxiu.com/490.html
四、修改ssh端口号
ssh默认端口是22,为了安全我们可以修改成别人不容易猜到的端口,这里如果系统已经开启了防火墙便需要先修改防火墙规则放行要更换的端口,不然更换端口后,会再也无法连接服务器了。详细可以参考上一篇文章:CentOS(Linux) firewall 防火墙的设置与命令 在防火墙放行你要更换的端口号。或者你已经了解自己的防火墙状态,直接用下面命令便可:文章源自JAVA秀-https://www.javaxiu.com/490.html
1、修改/etc/ssh/sshd_config
文件
vi /etc/ssh/sshd_config //可以用vi编辑,也可以用WinSCP远程连接上服务器直接修改sshd_config文件
#Port 22 //这行去掉#号,防止配置不好以后不能远程登录,还得去机房修改,等修改以后的端口能使用在注释掉
Port 13556 //下面添加这一行,13556为你将要修改为的端口
sed -i "s/Port .*/Port 你的端口/g" /etc/ssh/sshd_config //直接用命令修改端口方式
2、修改firewall(防火墙)配置(参考:CentOS(Linux) firewall 防火墙的设置与命令)
firewall添加想要修改的ssh端口:文章源自JAVA秀-https://www.javaxiu.com/490.html
添加到防火墙: firewall-cmd --zone=public --add-port=13556/tcp --permanent (permanent是保存配置,不然下次重启以后这次修改无效) 重启: firewall-cmd --reload 查看添加端口是否成功,如果添加成功则会显示yes,否则no firewall-cmd --zone=public --query-port=13556/tcp
3、重启ssh
systemctl restart sshd.service
4、测试新端口的ssh连接
测试修改端口以后的ssh连接,如果成功则将/etc/ssh/sshd_config
里面的port 22 重新注释掉文章源自JAVA秀-https://www.javaxiu.com/490.html

评论