Debian ssh安全设置
文章介绍了在 Linux 系统中添加新用户并赋予管理员权限的步骤、ssh 的多项安全设置方法以及查看 SSH 相关版本、进行性能测试等有用的小知识。
一.添加新用户并赋予管理员权限
1.安装sudo
部分Debian系统可能默认没有安装sudo命令,可以执行下面的命令先进行安装(需要root用户操作):
apt-get install sudo
2.添加新用户
直接执行下面的命令即可:
sudo adduser yourname #yourname改成自己的用户名称
执行该命令会自动创建用户、用户组和家目录,并要求设置用户密码和名称等信息。
输入完之后,一直按回车键,最后输入y
3.赋予sudo权限
usermod -aG sudo yourname #yourname 改成你上一步骤中的用户名
4.测试
切换到yourname,然后测试sudo是否正常。
su - yourname #切换到yourname
sudo pwd测试sudo权限,如果没有报错,说明正常
二.ssh安全设置
1.禁用空密码
在 Linux 中,用户账户可以不设置任何密码(或者为空密码),没密码登录ssh是一个极大的安全隐患,我们应该禁止使用空密码。方法是在配置文件/etc/ssh/sshd_config中,将PermitEmptyPasswords选项配置为no。
PermitEmptyPasswords no
2.修改 ssh 登录端口
大部分攻击脚本都是围绕ssh的默认端口22写的,更改这个默认端口会增加 ssh 的安全性,因为会极大的减少攻击者的数量。
在配置文件中搜索端口信息,并将其更改为其他值:
Port 123
修改后记得在防火墙打开端口哦!
3.禁止使用 root 用户登录
如果系统添加了 sudo 用户,最好使用 sudo 用户通过 ssh 连接,而不是 root 用户。
要禁止 root 用户通过 ssh 访问,可以修改PermitRootLogin选项为no:
PermitRootLogin no
4.配置空闲超时间隔
空闲超时间隔是 ssh 连接可以在没有任何活动的情况下保持活动状态的时间。这种空闲会话也是一种安全风险,所以需要配置合适的空闲超时时间间隔。
超时间隔以秒为单位,默认值是0。我们可以将其更改为300,即保持 5 分钟的超时间隔:
ClientAliveInterval 300
5.配置发送消息次数
在此间隔之后,ssh 服务器将向客户端发送一条活动消息。如果没有得到响应,连接将关闭,最终用户将注销。
还可以配置在断开连接之前,发送活动消息的次数:
ClientAliveCountMax 2
三.有用的小知识
1.如何查看SSH的版本号
查看ssh软件版本命令:ssh -V
2.如何查看ssh协议版本
检查本地OpenSSH服务器支持的SSH协议版本,你可以参考/etc/ssh/sshd_config这个文件。用文本编辑器打开/etc/ssh/sshd_config,并且查看“Protocol”字段。
如果显示Protocol 2,即服务器只支持SSH2。
如果显示Protocol 1,2,即服务器同时支持SSH1和SSH2。
3.性能测试
bensh.sh测试的内容包括VPS系统基本信息、全球各知名数据中心的测试点的速度(支持IPv6)以及IO 测试。
wget -qO- bench.sh | bash
</article>