Linux 安全设置及相关命令

新开了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/用户名/文件名

好了,暂时就写到这里了,如果还有博主会继续更新补充

添加新评论