通过expect免自动输入密码登陆远程服务器 1.前提必须已经安装expect 2.新建login.sh,文件内容如下 #!/usr/bin/expect -f spawn ssh root@140.10.10.52expect "password:"send "passwordR\r"interact 3.执行./login.sh即可登陆远端服务器…
自动输入密码执行远程服务器上的java -version命令 for i in $(seq 1 253);do sshpass -p "W123hz" ssh weili@192.168.1.$i -o StrictHostKeyChecking=no java -version;done 是为了不用输入yes或no -o StrictHostKeyChecking=no…
很多时候我们喜欢在自己电脑的终端直接ssh连接Linux服务器,而不喜欢使用那些有UI界面的工具区连接我们的服务器.可是在终端使用ssh我们每次都需要输入账号和密码,这也是一个烦恼,所以我们可以简单的打造一个在Linux/Mac os运行的自动ssh登录远程服务器的小工具.来个GIF动画示例下先: 概述 我们先理一下我们需要些什么功能: 1. 添加/删除连接服务器需要的IP,端口,密码 2. 自动输入密码登录远程服务器 对,我们就做这么简单的功能 开始写代码代码比较长,所以我也放在在Github…
ssh免密码登陆远程服务器 在使用windows下的cygwin或者在linux下使用Terminal进行远程服务器登陆测试的时候总是会要求输入账号密码,对于此我们可以使用ssh将公钥放在服务器上的方式来实现免密码登陆. 1.创建公钥 #在Terminal输入 ssh-keygen -t rsa 一路回车按确定 #home/XXX/.ssh/该目录下产生了两个文件 id_rsa id_rsa.pub id_rsa.pub就是你的公钥,现在将公钥改名为authorized_keys上传至服务器上的…
#!/usr/bin/expect set ipaddress [lindex $argv 0] set passwd [lindex $argv 1] set timeout 3 spawn ssh root@${ipaddress} expect { "yes/no" { send "yes\r";exp_continue } "*assword" { send "${passwd}\r" } } expect "…
在当前Linux生成公钥私钥ssh-keygen公钥私钥存放路径为:~/root/.ssh/id_rsa id_rsa.pub 登陆被远程主机,进入目录~/root/.ssh/是否存在authorized_keys文件,若不存在新建authorized_keys文件将第一步生成的id_rsa.pub文件内容,拷贝到authorized_keys中也可以用命令ssh-copy-id root@192.168.1.1 ssh远程若不想每次输入Ip地址可修改/etc/hosts文件在hosts文件首行…
今天要开发一个定时任务,然后加入cron列表中.但是有个问题摆在眼前,脚本的执行中需要输入数据库密码(貌似5.1版本以上不允许在-p后直接加密码,会报错) mysql -u root -p << SQL use db; set names utf8; `cat task.sql` SQL 运行上述代码后,会提示: Enter password: expect可以帮助我们完成这件事情: 将上述代码保存到一个文件中:db.sh 并且编写如下代码保存为db.exp: #!/usr/bin/expec…
1. 引言 最近做了一个项目,需要频繁与另一台主机进行文件的传输:中间想到了很多方式:FTP.samba.curl等,但是还是感觉scp最好用. SCP使用教程可参阅:http://www.jb51.net/article/70919.htm 但scp也存在着一些问题,每次都需要输入目标机的密码,需人为手动干预,这个就比较烦了,那么有没有可以自动进行界面交互的命令呢? 答案当然是:有: expect喽 except使用教程:https://www.cnblogs.com/lixigang/art…
Shell结合Expect自动输入密码示例 #!/bin/bash cd /data/live /usr/bin/expect <<-EOF spawn git clone "ssh://xxxxxxxxxxxx" expect "*passphrase*" send "passwordhere\n" expect eof EOF time=`/bin/date "+%Y%m%d%H%M%S"` cd dir1 &…
现在一般都会通过github,gitlab,gitee来管理我们的代码.我们希望只要我本地push了代码,远程服务器能自动拉取git仓库的代码,进行同步. 这就需要用到各仓库为我们提供的webhooks了,每当有push操作时,仓库就会调用我们设置的脚本,通过在脚本里我们运行命令来手动拉取代码. 这里以gitee为例 一.首先我们在gitee创建一个项目 二.确保我们服务器上安装了git > yum install git 三.为了避免git pull时输入账号和密码,我们需要创建.git-cr…
现场服务器较多,密码3个月过期,在到期时需更改密码. 使用expect编写,尝试登陆2次后退出(防止密码错误时账号锁定),超时重试一次. shell脚本调用并定时执行,登陆成功后执行一条命令,如:hostname.uname等,根据退出状态判断密码是否到期. 0--正常 1--传入参数错误 2--timeout 3--密码错误或到期 脚本如下: #!/usr/bin/expect ##########################################################…
生成ssh密钥,将公钥上传至远程服务器~/.ssh目录下面(没有的话就建一个): ssh-keygen -t rsa scp ~/.ssh/id_rsa.pub root@yourserver.com:/root/.ssh/ 登录到远程服务器,导入公钥到authorized_keys(没有建一个): cd ~/.ssh cat id_rsa.pub >> authorized_keys 删除公钥 rm id_rsa.pub 本地配置ssh config Host server1 HostNam…
访问远程服务器Tomcat 8的管理页面报错 在远程服务器上安装了一个tomcat8.5,配置好用户后重新启动tomcat ,发现:8080可以访问,但是进入:8080/manager/html页面报403访问受限,具体报错信息如下: 403 Access Denied You are not authorized to view this page. By default the Manager is only accessible from a browser running on the…
10.170.1.18服务器免密登录到10.170.1.16服务器 首先登入一台linux服务器(10.170.1.18),此台做为母机(即登入其他linux系统用这台做为入口):执行一行命令生成key文件:ssh-keygen -t rsa  一路回车 在母机上,进入/roo/.ssh目录,找到id_rsa.pub该文件,这个文件就是刚才执行ssh-keygen所生成的公钥key文件. 在10.170.1.16进入 /root/.ssh/目录下查看 用scp命令,将母机产生的key拷一份到远程…
由于网上的资料比较杂,经过本人整理实际操作验证,保证ok  本人的服务器系统为centos5.8 下面的都是centos服务器上的操作,需要简单的配置下: win客户端使用xmanger软件:首先是服务端已经安装了图形化桌面:  #yum groupinstall "GNOME Desktop Environment" #yum groupinstall “X Window System” 服务器端开启远程桌面连接的配置:  vim /etc/gdm/custom.conf [secu…
系统: Ubuntu:16.04 安装expect: sudo apt-get update sudo apt-get install expect 脚本实例: //这一行告诉操作系统脚本里的代码使用哪一个shell来执行.这里的expect其实和linux下的bash.windows下的cmd是一类东西. #!/usr/bin/expect //set的功能是给参数赋值,这里设置的是超时时间,计时单位是:秒 .timeout -1 为永不超时 set timeout //expect脚本可以接…
#!/bin/bash#删除~/.ssh/known_hosts 后,ssh 远程任何主机都会询问是否确认要连接该主机rm -rf ~/.ssh/known_hostsexpect <<EOF    spawn ssh 192.168.4.254    expect "yes/no"          {send "yes\r"}    expect "password"      {send "密码\r"}   …
• 实验环境:        a. Vmware 14 PRO        b. windows 7 x64 客户机        c. windows server 2008 R2 x64 服务器        d. 网络模式:仅主机模式    • 操作步骤        a. 关闭防火墙        b. 在window server 2008 上面            i. 打开控制面板            ii. 开启或关闭windows功能            iii. 添加…
1.tomcat配置 在tomcat目录中的conf目录下找到tomcat-users.xml配置文件,然后搜索tomcat-users,进行tomcat用户的角色和权限配置,如下: <tomcat-users> <role rolename="manager-script"/> <role rolename="manager-jmx"/> <role rolename="manager-status"/…
本地的用户名需要和ssh服务器的用户名一致 1.在Server服务器上加载私钥文件ssh-add wang_rsa 2.如果系统提示:could not open a connection to your authentication agentssh-agent bash然后再执行上述的ssh-add wang_rsa 3.关于目录和文件的权限设置.ssh目录的权限必须是700,同时本机的私钥的权限必须设置成600chmod 600 wang_rsa否则ssh服务器会拒绝登录 如果无法加载尝试…
一.实际工作生产场景分析 张三是某公司员工,由于业务上的需求,需要经常使用SSH工具登陆服务器A的root账户进行操作,为避免重复进行密码验证身份.现采用张山的公钥发送给服务器A,免输入密码登陆到服务器A的root账户.首先张三要生成一对公钥和私钥,私钥要绝对保密. 理解思路:用户alex想要免输入密码登陆bob的主机,就需要在alex主机上把自己的公钥发送(ssh-copy-id  -i  ~/.ssh/id_rsa.pub root@bob's IP address)给bob的主机.同理可类…
每次开发Python项目时,对于所有Python开发人员来说,最枯燥的不是修改代码,而是实时将自己的代码上传至远程服务器,进行测试或者部署,本人最初开发也是这样,通过使用Xshell 5,WinSCP等工具对项目进行远程部署测试,每次都得花大量时间,对开发和部署来说,太过于繁琐,后来发现捷克公司开发的工具捷克JetBrainsPyCharm具有将Python项目自动部署到远程服务器的功能,为开发提供了很大的帮助. 这几种部署项目到远程服务器的操作方式,我为大家一一介绍: Xshell 5 使用X…
一.部署Web工程的几种方式 ①本地打war,上传至远程服务器tomcat容器即可 优点:简单粗暴 缺点:浪费时间 ②IDEA自动部署至远程服务器 优点:节省大量时间 缺点:配置稍多(第一次) 二.IDEA自动部署至远程服务器 ①搭建服务器的tomcat环境 ②本地IDEA关联远程服务器 打开IDEA,按如下图配置: 进入配置界面 继续配置 上传本地工程包:这样,我们在本地修改某个java文件,直接提交该class即可,无需打war上传等繁琐的过程. ③tomcat配置文件:server.xml…
在讲下文之前,我都默许大家都已经生成了自己的ssh公钥和密钥,在自己的~/.ssh 目录下面,如果没有,请使用 ssh-keygen -t rsa -C "你的邮箱" 命令生成 1,上传自己的公钥到远程主机中 公钥生成后,一般是 ~/.ssh/id_rsa.pub 文件,后面的pub就是public开放的意思,没有pub的就是私钥了 vim ~/.ssh/id_rsa.pub 打开你的公钥文件,复制到远程主机 ~/.ssh/authorized_keys 文件中 authorized_…
最近发现Python课器做很多事情,在监控服务器有其独特的优势,耗费资源少,开发周期短. 首先我们做一个定时或者实时脚本timedtask.py,让其定时监控目标服务器,两种方式: 第一种: #!/usr/bin/env python # -*- coding: utf-8 -*- # @Time : 2017/11/27 15:59 # @Desc : 定时任务,以需要的时间间隔执行某个命令 # @File : timedtask.py # @Software: PyCharm import…
scp -r root@172.16.252.32:/home/files /home/files   下载目录  -r root是用户172.16.252.32是ip:/home/files 是你要下载的服务器上的目录/home/files 是你要存放在本地的位置 ssh可以登陆远程服务器  进行一些简单的操作 putty是windows 登陆远程服务器的工具psftp也是putty工具的一个,可以下载文件 上传文件等.  注意下载到windows的乱码问题…
C# DateTime的11种构造函数   别的也不多说没直接贴代码 using System; using System.Collections.Generic; using System.Globalization; using System.Linq; using System.Text; using System.Text.RegularExpressions; using System.Threading; using System.Threading.Tasks; namespace…
转自:http://7056824.blog.51cto.com/69854/403669 作为一名 linux 管理员,在多台 Linux 服务器上登陆进行远程操作是每天工作的一部分.但随着服务器的增多,每次登陆,系统都会提示输入用户名和密码,频繁的输入用户名和密码是一件让人很烦的事 情.也许有人说可以用一些客户端工具,比如:SecureCRT 等,的确使用这些软件会方便很多,但是这些软件不是价格昂贵的商业软件就是依附于特定平台才能安装使用,所以我今天介绍的是使用 ssh 自带的功能实现使用客…
目录 .生成密匙对 .拷贝公匙到远程机 .启动登陆代理 这种方法处理后每次需要运行命令:ssh-add ~/.ssh/id_dsa 作为一名 linux 管理员,在多台 Linux 服务器上登陆进行远程操作是每天工作的一部分.但随着服务器的增多,每次登陆,系统都会提示输入用户名和密码,频繁的输入用户名和密码是一件让人很烦的事情.也许有人说可以用一些客户端工具,比如:SecureCRT 等,的确使用这些软件会方便很多,但是这些软件不是价格昂贵的商业软件就是依附于特定平台才能安装使用,所以我今天介绍…
背景:无密码登录,所谓的无密码登录其实是指通过证书认证的方式登录,使用一种‘公私钥’认证的方式来进行ssh登录 在linux系统中,ssh是远程登录的默认工具,因为该工具的协议使用了RSA/DSA的加密算法.该工具做Linux系统的远程管理是非常安全的.(telnet 因为其不安全性,在linux系统被搁置使用啦!!!) “公私钥”认证方式简单的解释:首先在客户端创建一对公私钥(公钥文件:~/.ssh/id_rsa.pub: 私钥文件:~/.ssh/id_rsa).然后把公钥放到服务器上(~/.…