Linux中如何禁止非法用户试探登录

linux的服务主机暴露在互联网上,经常会遭到一些非法用户的骚扰。如弱口令扫描,试探性登录;

这些都对linux主机构成威胁。下面脚本,就将非法用户拒之门外。

原理:获取尝试登录linux主机用户的IP,切登录失败次数超过10以上, 就认为此类IP为非法用户登录,然后将其IP追加到iptables规则中进行过滤,使其不能与linux主机通讯,系统每隔10分钟执行一次。

#/bin/bash
rm -f /data/ip.txt 2>/dev/null
/sbin/iptables -F
cat /var/log/secure|awk ‘/Failed/{print $(NF-3)}’|sort|uniq -c|awk ‘{print $1,$2}’>/data/ip.txt
for i in `cat /data/ip.txt|awk ‘{if($1>=10) {print $2}}’`
do
/sbin/iptables -I INPUT -p all -s ${i} -j DROP;sleep 1
done
crontab -e
*/10 * * * * /data/ip.sh > /dev/null 2>&1

查看本栏目更多精彩内容:http://www.bianceng.cnhttp://www.bianceng.cn/OS/Linux/

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索linux
, 登录
, iptables
, linux - awk
, data
, 用户
, 主机
, 禁止用户登录
非法登录
linux 禁止用户登录、linux禁止用户ssh登录、linux 禁止用户登陆、linux禁止用户rlogin、linux 禁止用户,以便于您获取更多的相关知识。

时间: 2024-09-15 00:10:16

Linux中如何禁止非法用户试探登录的相关文章

在 Linux 中为非 SSH 用户配置 SFTP 环境

在 Linux 中为非 SSH 用户配置 SFTP 环境 在某些环境中,系统管理员想要允许极少数用户在可以传输文件到Linux机器中,但是不允许使用 SSH.要实现这一目的,我们可以使用SFTP,并为其构建chroot环境. SFTP & chroot背景: SFTP是指SSH文件传输协议(SSH File Transfer protocol)或安全文件传输协议(Secure File Transfer Protocol),它提供了可信数据流下的文件访问.文件传输以及文件管理功能.当我们为SFT

在Linux中添加普通新用户

  在Linux中添加普通新用户 ,超级用户(也称为"root")是一个具有修改系统中任何文件权力的特别账号.在日常工作中,最好不要使用超级用户账号进入系统,因为任何错误操作都可能导致巨大的损失.由于超级用户账号是系统建立后提供的惟一一个账号,因此,您需要建立和使用一个一般用户账号进行日常工作. 超级用户可以创建新的用户账号,下面的命令将建立一个名为joe的新用户: # adduser joe # passwd joe (键入joe的口令) Linux采用了将系统管理员和一般用户分开的

Linux中VPS禁止ROOT授权/登录/禁用root用户的方法

修改ROOT的思路:添加新用户,然后设置该用户为ROOT权限,这样我们以后登录SSH就可以用新用户,这个用户只有我们自己知道,这样就增加了猜测的难度,至此VPS主机的安全进一步得到提升. 第一.新增用户以及设置密码 useradd itbulucom passwd itbulucom 利用useradd添加用户,passwd给这个用户设置密码,然后会出现添加密码界面,我们输入密码之后回车再输入一次. 新增新管理用户 第二.设置权限 vi /etc/ssh/sshd_config 可以用上面的vi

Linux中禁止root用户SSH登录及修改SSH端口的方法

  1.禁止root用户登录ssh 代码如下: #vi /etc/ssh/sshd_config 把 代码如下: PermitRootLogin yes 改为 代码如下: PermitRootLogin no 重启sshd服务 代码如下: #service sshd restart 此时再使用root登录就会被提示拒绝: 代码如下: login as: root root@192.168.8.100's password: Access denied 2.修改ssh默认端口 代码如下: vi /

linux中vsftpd下虚拟用户+被动模式配置详解

下面说说在linux下部署vsftp的过程吧,小小笔记. 一.安装 这里我说下最简单的rpm包安装,因为光盘中有,何必编译呢? yum install db4* vsftpd -y 二.配置 1.新建系统用户 useradd vsftpd -s /sbin/nologin 限制vsftpd用户登录,此用户将最为vsftpd服务的宿主用户 useradd ftp -s /sbin/nologin 这里是Vsftpd虚拟宿主用户,默认情况下这个用户应该有. 当然这些用户你可以用另外的名字. 2.修改

linux中利用日志记录用户执行的命令

工作中,需要把用户执行的每一个命令都记录下来,并发送到日志服务器的需求,为此我做了一个简单的解决方案.这个方案会在每个用户退出登录 时把用户所执行的每一个命令都发送给日志守护进程rsyslogd,你也可通过配置"/etc/rsyslog.conf"进一步将日志发送给日志服务器 第一种方法  # vi /etc/profile #设置history格式 export HISTTIMEFORMAT="[%Y-%m-%d %H:%M:%S] [`who am i 2>/dev

Linux中如何限制一个用户可以使用启动的进程数

对于Linux中多用户的管理,往往我们需要去限制每一个用户在Linux中使用启动的进程数量,避免进程数.CPU.内存使用率http://www.aliyun.com/zixun/aggregation/36406.html">占用过高等问题,那么我们应该如何去限制一个用户呢? 我们可以通过修改/etc/security/limits.conf文件来实现. 先确定一下/etc/pam.d/login文件中下面一行的存在:session required /lib/security/pam_l

linux中shell批量添加用户和设置随机密码脚本

有一个朋友问我如何批量创建用户和设置密码 ,我就简单给他写了两个脚本,让他自己参考下并自己根据实际情况进行修改,毕竟他需要的用户名和密码都是实际生产环境的. 这里分两种情况,一种是测试for循环批量添加用户,一个是根据实际生产环境进行批量添加.分别写一下案例如下: 1,for添加指定类型用户以及设置随机密码. 脚本作用:批量添加user1-10用户并设置随机8位数随机密码 #!/bin/bash #test add user and set passwd for n in `seq 10` do

Linux中设置Squid的用户认证存取控制

内核版本: Linux 2.2 Squid版本: Squid-2.3.stable2 (http://www.squid-cache.org/Versi ... STABLE2-src.tar.gz) 发行版本: Redhat Linux 6.0 1. 下载,编译,安装Squid略 注意:运行squid作为nobody,不能用root. 假定squid home目录为/usr/local/squid/ 假定squid source目录在/tmp/squid-2.3.STABLE2 2. # cd