网站首页 > 博客文章 正文
sshpass 是一个用于非交互式SSH登录的工具,让脚本在不需要人工干预的情况下提供密码进行认证。
然而,请注意,sshpass 的使用存在安全隐患,因为它会在命令行中暴露密码,因此在生产环境中不推荐常规使用,除非在安全的内部网络或结合其他安全措施如密钥认证的前提下临时使用。
在Linux系统中使用sshpass的简单示例:
示例1:直接在命令行中提供密码登录远程主机
Bash1sshpass -p 'your_password' ssh user@hostname
这里,-p 参数后面跟随的是要用于SSH登录的密码。user 是远程主机上的用户名,hostname 是远程主机的IP地址或域名。
示例2:通过脚本执行远程命令
Bash1#!/bin/bash
2read -s PASSWORD # 通过read命令安全地获取密码,避免在shell历史记录中留下密码
3echo # 新行以清除密码提示
4
5sshpass -p "$PASSWORD" ssh user@hostname 'ls -l /var/log'
这个脚本会首先从终端安全地读取密码,然后使用这个密码通过sshpass登录远程主机并执行ls -l /var/log命令。
示例3:从文件中读取密码
Bash1sshpass -f password_file ssh user@hostname
在本例中,密码被存储在一个名为password_file的文件中,sshpass通过-f参数从文件中读取密码进行认证。
替代方案:
- 密钥对认证:使用SSH密钥对代替密码进行认证是最安全的做法。在本地生成一对密钥(公钥和私钥),将公钥放置在远程服务器的~/.ssh/authorized_keys文件中,这样就通过私钥进行免密码登录。
- 示例:
- Ansible等自动化运维工具:Ansible等工具提供了基于密钥对认证的Playbook,用来自动化执行远程任务,同时也支持Vault等机制来安全地管理和传递敏感信息。
- expect工具:虽然不如密钥对安全,但在某些场景下,expect工具作为一种替代方案,它在脚本中模拟交互式输入密码,而非直接在命令行中暴露密码。
猜你喜欢
- 2024-10-08 使用Java连接Shell输出日志(java操作shell命令)
- 2024-10-08 简单介绍如何为linux集群快速配置ntp
- 2024-10-08 hadoop新手入门篇:hadoop集群服务器详细配置教程
- 2024-10-08 创建并使用SSH密钥登录服务器(ssh创建公钥)
- 2024-10-08 Jumpserver开源跳板机安装部署(跳板机远程)
- 2024-10-08 Ansible详解(一)基础安装和配置(ansible-managed)
- 2024-10-08 Ansible的免密码配置(ansible配置免密登录)
- 2024-10-08 掌握SpringBoot-2.3的容器探针:实战篇
- 2024-10-08 一次“诡异”的 Ansible 密码问题排查,最后真相?
- 2024-10-08 巧妙的Linux命令,再来6个(linux 的命令)
你 发表评论:
欢迎- 07-07Xiaomi Enters SUV Market with YU7 Launch, Targeting Tesla with Bold Pricing and High-Tech Features
- 07-07Black Sesame Maps Expansion Into Robotics With New Edge AI Strategy
- 07-07Wuhan's 'Black Tech' Powers China's Cross-Border Push with Niche Electronics and Scientific Firepower
- 07-07Maven 干货 全篇共:28232 字。预计阅读时间:110 分钟。建议收藏!
- 07-07IT运维必会的30个工具(it运维工具软件)
- 07-07开源项目有你需要的吗?(开源项目什么意思)
- 07-07自动化测试早就跑起来了,为什么测试管理还像在走路?
- 07-07Cursor 最强竞争对手来了,专治复杂大项目,免费一个月
- 最近发表
-
- Xiaomi Enters SUV Market with YU7 Launch, Targeting Tesla with Bold Pricing and High-Tech Features
- Black Sesame Maps Expansion Into Robotics With New Edge AI Strategy
- Wuhan's 'Black Tech' Powers China's Cross-Border Push with Niche Electronics and Scientific Firepower
- Maven 干货 全篇共:28232 字。预计阅读时间:110 分钟。建议收藏!
- IT运维必会的30个工具(it运维工具软件)
- 开源项目有你需要的吗?(开源项目什么意思)
- 自动化测试早就跑起来了,为什么测试管理还像在走路?
- Cursor 最强竞争对手来了,专治复杂大项目,免费一个月
- Cursor 太贵?这套「Cline+OpenRouter+Deepseek+Trae」组合拳更香
- 为什么没人真的用好RAG,坑都在哪里? 谈谈RAG技术架构的演进方向
- 标签列表
-
- ifneq (61)
- 字符串长度在线 (61)
- messagesource (56)
- aspose.pdf破解版 (56)
- promise.race (63)
- 2019cad序列号和密钥激活码 (62)
- window.performance (66)
- qt删除文件夹 (72)
- mysqlcaching_sha2_password (64)
- ubuntu升级gcc (58)
- nacos启动失败 (64)
- ssh-add (70)
- jwt漏洞 (58)
- macos14下载 (58)
- yarnnode (62)
- abstractqueuedsynchronizer (64)
- source~/.bashrc没有那个文件或目录 (65)
- springboot整合activiti工作流 (70)
- jmeter插件下载 (61)
- 抓包分析 (60)
- idea创建mavenweb项目 (65)
- vue回到顶部 (57)
- qcombobox样式表 (68)
- tomcatundertow (58)
- pastemac (61)
本文暂时没有评论,来添加一个吧(●'◡'●)