Linux SSH设置
拿到一台vps后如果我们不做任何配置的话很快我们就会发现自己的vps多了大量的ssh爆破记录,因此为了让自己的vps稍微安全一点,就要对ssh的配置做一点点改动
创建普通用户
一般情况新入手的vps分配的用户都是root用户,而系统中全部程序使用root运行的话相对来说不是很安全,因此我们需要新建一个普通用户
#创建用户
adduser example
#将用户加入sudoer
adduser username sudo
加入sudo组还可以通过直接修改文件的方式
#添加可写权限
chmod u+w /etc/sudoers
vim /etc/sudoers
#找到root ALL = (ALL) ALL这一行,在下一行加入
username ALL = (ALL) ALL
#最后还原文件权限
chmod u-w /etc/sudoers
这里插入一个小知识点。
useradd在使用该命令创建用户是不会在/home下自动创建与用户名同名的用户目录,而且不会自动选择shell版本,也没有设置密码,那么这个用户是不能登录的,需要使用passwd命令修改密码。
adduser在使用该命令创建用户是会在/home下自动创建与用户名同名的用户目录,系统shell版本,会在创建时会提示输入密码,更加友好。
SSH安全设置
SSH设置禁止ROOT登录
1.修改SSH配置文件,将下面一行的注释取消并修改yes为no
#编辑ssh配置文件
vim /etc/ssh/sshd_config
-------------------------
PermitRootLogin no
更改默认端口
vim /etc/ssh/sshd_config
-------------------------
#Port 22
Port 29888
更改密钥登录
1.生成密钥
ssh-keygen -t rsa
2.传输密钥到服务器
可以在本机使用一键完成
ssh-copy-id user@serverip
也可以手动完成配置,在本机上执行此命令,上传公钥
cd .ssh
scp -P id_rsa.pub user@serverip:/tmp
#在服务器上执行此命令,追加到authorized_keys
cd /tmp && cat id_rsa.pub >>s ~/.ssh/authorized_keys
#更改权限
chmod 600 ~/.ssh/authorized_keys
- 配置sshd开启密钥登录
# vi /etc/ssh/sshd_config #RSA认证 RSAAuthentication yes #开启公钥验证 PubkeyAuthentication yes #验证文件路径 AuthorizedKeysFile .ssh/authorized_keys #禁止密码认证 PasswordAuthentication no #禁止空密码 PermitEmptyPasswords no # 最后保存,重启sshd服务 sudo service sshd restart