新开了Linux服务器不做一点安全设置很容易被人黑的,像博主这种小白前两天新开的vps服务器就被人黑了进去。所以赶紧在网上找了相关资料,对博主的VPS进行了相关安全设置。
修改 SSH 连接端口
打开配置文件
vi /etc/ssh/sshd_config
找到 Port 22,然后去掉此行前面的 #号;
新增一行 Port XXX,XXX 为增加的端口号
不建议直接修改(可能会让自己没法 SSH 登录了)
重启 SSH 服务
/etc/init.d/sshd restart
或者
services sshd restart
然后测试 ssh 连接
ssh localhost -p XXX //XXX为你修改的端口号
另外需要注意的是,如果本机测试没有问题,但还是不能使用第三方工具从外部 SSH 链接的话,需要关闭防火墙 ,重新启动一下 SSHD
防火墙放行指定端口
打开配置文件
vi /etc/sysconfig/iptables
复制 22 端口那一行,改为新的端口即可
重启服务
service iptables status //查看防火墙状态
service iptables start //开启防火墙
service iptables stop //关闭防火墙
service iptables restart //重启防火墙
本段引用于Leonn 的博客
Fail2ban 一键防止SSH爆破
Fali2ban为一键安装部署,自动配置防 SSH 爆破。可自定义 SSH 连接端口,ip封禁时间,最高重试次数。
安装
wget https://raw.githubusercontent.com/FunctionClub/Fail2ban/master/fail2ban.sh
bash fail2ban.sh
卸载
wget https://raw.githubusercontent.com/FunctionClub/Fail2ban/master/uninstall.sh
bash uninstall.sh
本段引用与雨落无声
Linux 安全相关命令
netstat -an //查看所有连接本机端口的服务
last //查看用户登录历史
echo > /var/log/wtmp //清除登陆系统成功的记录
lastb //查看用户登录失败记录
echo > /var/log/btmp //清除登陆系统失败的记录
lastlog //查看所有用户最后一次登录时间
history //查看命令历史
vi /root/history //新建命令历史记录文件
history -c //清除历史执行命令
echo > ./.bash_history //一样是清除历史执行命令
history -r /root/history.txt //导入历史执行记录
cat /home/root/.bash_history //查看root用户操作历史(其它用户同理)
禁止root用户登录
useradd 用户名 //新建普通用户
passwd 密码 //设置密码
修改配置文件
vi /etc/ssh/sshd_config
把 PermitRootLogin yes 改为 PermitRootLogin no 保存
重启sshd服务
service sshd restart
- 远程管理用普通用户登录,然后用 su root 切换到root用户拿到最高权限
使用脚本保存所有用户操作历史
编辑配置文件
vi /etc/profile
在文件底部加入以下代码
PS1="`whoami`@`hostname`:"'[$PWD]'
history
USER_IP=`who -u am i 2>/dev/null| awk '{print $NF}'|sed -e 's/[()]//g'`
if [ "$USER_IP" = "" ]
then
USER_IP=`hostname`
fi
if [ ! -d /tmp/dbasky ]
then
mkdir /tmp/dbasky
chmod 777 /tmp/dbasky
fi
if [ ! -d /tmp/dbasky/${LOGNAME} ]
then
mkdir /tmp/dbasky/${LOGNAME}
chmod 300 /tmp/dbasky/${LOGNAME}
fi
export HISTSIZE=4096
DT=`date "+%Y-%m-%d_%H:%M:%S"`
export HISTFILE="/tmp/dbasky/${LOGNAME}/${USER_IP} dbasky.$DT"
chmod 600 /tmp/dbasky/${LOGNAME}/*dbasky* 2>/dev/null
执行脚本生效
source /etc/profile
上面脚本会在系统的/tmp新建一个dbasky目录,记录所有登陆过系统的用户和IP地址(文件名),每当用户登录/退出会创建相应的文件,该文件保存这段用户登录时期内操作历史,可以用这个方法来监测系统的安全性。
查看脚本保存的相关信息
cat /etc/dbasky/用户名/文件名
好了,暂时就写到这里了,如果还有博主会继续更新补充