shell只允许某些ipssh登录,配合iptables最好
本人只是一枚中职生小白,在管理学校的网站,这些脚本都是我为了管理这些网站自己写的,请高手不要见笑,请多指点指点,谢谢。如果没有在代码中体现的变量,已经被我定义成了环境变量。
大概过程:请判断是不是ssh登录的,如果是再判断ip,如果不是这三个ip里的,就把它的进程删了,并把最近十次登录的消息,上传到我的ftp。
#!/bin/bash
source ~/.bash_ftp
IP1='192.168.19.88'
IP2='172.18.0.8'
IP3='192.168.19.100'
UPID=$(ps |grep bash |awk '{print $1}')
#IPSSH=$(last |grep pts/ |head -1|awk '{print $3}')
IPSSH=$(who am i |cut -d "(" -f 2- |cut -d ")" -f -1)
IFTTY=$(who am i |awk '{print $2}' |cut -d '/' -f -1)
LOGNAME="sshlogin_"$(date +%F_%H_%M)
if [ "$IP1" != "$IPSSH" ] && [ "$IP2" != "$IPSSH" ] && [ "$IP3" != "$IPSSH" ] && [ "$IFTTY" = "pts" ]; then
echo "异常情况:"$(last |head -1) >/tmp/$LOGNAME
echo "****最近几次登录情况****" >>/tmp/$LOGNAME
last |head -10 >>/tmp/$LOGNAME
FILE="/tmp"
LOGINDIR="loginlog"
cd $FILE
ftp -n $FTPHOST >/dev/null <<END
user $USERNAME $PASSWORD
cd $LOGINDIR
mput $LOGNAME
quit
END
rm -rf /tmp/$LOGNAME
kill -9 $UPID
fi
转载于:https://blog.51cto.com/q8886888/1169380
shell只允许某些ipssh登录,配合iptables最好相关推荐
- linux虚拟用户登录失败,用shell用户或虚拟用户登录pureftpd
摘要:讲解了Unix系统下pureftpd如何用shell用户登录,以及如何用虚拟用户登录. 目录: 一.系统真实(shell)用户登录 二.puredb虚拟用户支持 三.技巧 ----------- ...
- shell 密码输入不显示,Shell输出内容不显示密码,Shell实现有密码自动登录sshpass 应用实践...
在很多实践项目中,我们经常会通过SSH来进行认证,如通过SSH拷贝文件,虽然我们可以使用公钥与私钥实现ssh 无密码登录,在不同的服务器上又需要配对相应的密钥,切换用户麻烦等问题,在一些需要交互但会涉 ...
- shell脚本一键装机(pxe配合kickstart无人值守)
shell脚本一键装机(pxe配合kickstart无人值守) shell脚本实现无人值守安装 图文详细步骤可以参前期博文: PXE批量网络装机(超详细实验教程)教会你自动化批量安装linux 系统 ...
- shell脚本部署免密登录
shell脚本部署免密登录 创建一个目录,用来存放脚本 [root@localhost scripts]# tree . ├── host └── ssh.sh0 directories, 2 fil ...
- Linux ssh shell 自动登录,shell脚本实现ssh自动登录功能分享
文件名:ssh_auto_login #!/usr/bin/expect ## # ssh模拟登陆器 # # @author zhiyuan ## if {$argc<4} { puts &qu ...
- Linux Shell 只列出目录的方法
在实际应用中,我们有时需要仅列出目录,下面是 4 种不同的方法. 1. 利用 ls 命令的 -d 选项: $ ls -d */ Desktop/ pic/ shell/ src/ 2. 利用 ls 命 ...
- javaweb实现单点登录,防止重复登录,获取sessionid,对session及时销毁回收,只允许一个用户登录,结合struts2实现
首先我们目的是实现一个单点登录,即只允许单个账户单个登录. 实现异地与同地登录判断 要将先登录的用户强制下线.不免用到session. 单点登录的最大难题:已经登录且重复登录的用户的session怎么 ...
- 用Redis实现频繁操作的拦截,例如一天内只允许一个用户登录5次
上次看到一个问题:如何用Redis实现只允许一个用户一天内登录五次. 想到Redis中可以给string设置过期时间,所以我们可以利用这个特性来实现. 作为一个java程序猿,我们使用Jedis,具体 ...
- 【Spring Security】如何实现多设备同一时间只允许一个账号登录(即前登录用户被后登录用户挤下线)?只需简单两步!
1.需求分析 在同一个系统中,我们可能只允许一个用户在一个终端上登录,一般来说这可能是出于安全方面的考虑,但是也有一些情况是出于业务上的考虑,需求就是业务原因要求一个用户只能在一个设备上登录. 要实现 ...
最新文章
- [51nod1965]奇怪的式子(Min_25筛)
- React-状态提升
- C/C++程序语言概念
- 学习 WCF (4)--学会使用配置文件
- php 判断update返回为0_PHP进行数据库更新update操作,返回状态
- html5平板电脑,Html5添加支持桌面、移动触摸手机和平板电脑的Lightbox插件教程
- 给即将35岁的产品经理提个醒
- 微信小程序canvas保存绘制图片
- SonarLint黄线警告python:S125
- Junit4 安装与使用(IDEA)
- Lync 2013正式版评估及2013版独立客户端下载
- SQL Server 2005“错误1706。安装程序找不到需要的文件。请检查……”的处理办法
- oracle统计每日归档大小,归档大小日志计算
- 解决 您的安全设置不允许将此应用程序安装到您的计算机上的问题
- 信奥学习规划 信息学竞赛之路(2022.07.31)
- 天翼云服务器部署程序不能外网被访问问题
- HAL库学习之串口通信
- 强大的矩阵奇异值分解(SVD)及其应用(转)-我们老师推荐的
- 常见的机器学习数据挖掘知识点之Basis
- 计算机图像处理2000字论文,计算机图像处理技术论文.doc
热门文章
- java 去掉最后一个换行符_Python 教程(一)第一个Python程序
- 解析java匿名内部类
- linux系统中条码如何识别的,如何(可靠地)在嵌入式(无头)Linux中读取USB条形码扫描仪?...
- python什么环境_什么是Python?(基础环境建设),NO2,搭建
- linux系统如何创建python文件_linux如何运行python脚本
- proe输入数字时成双出现_Proe/Creo步进电机正反转仿真详解
- linux查看占用的命令,linux内存占用查看命令
- php使用referer,php中HTTP_REFERER函数用法实例
- linux编译openssl报错,alpine编译openssl1.1.1g报错解决
- php挖洞提权,记一次渗透挖洞提权实战