马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
x
1、mac连接linux服务器
- # ssh -p 22 root@192.168.1.15
复制代码 2、mac指定暗码连接linux服务器
- (1) 先安装sshpass,下载后解压执行 ./configure && make && makeinstall
- https://sourceforge.net/projects/sshpass/
- (2) 连接linux
- # sshpass -p \/\\\[\!\'\@wen12\$ ssh -p 22 root@192.168.1.15 # 复杂密码需要加转义符,转义后的密码是 /\[!'@wen12$
- (3) 把密码写入文件中通过-f指定文件登录
- # cat pass.txt
- /\[!'@wen12$
- # sshpass -f pass.txt ssh -p 22 root@192.168.1.15 # pass.txt文件中的复杂密码无需转义
复制代码 3、mac指定私钥和私钥暗码短语连接linux服务器
- (1) 服务器先生成密钥对并把生成的私钥传给mac机,为了方便查询可以把私钥重命名
- # ssh-keygen -t rsa
- # ssh-keygen -t rsa -P \/\\\[\!\'\@wen12\$ # 可以通过-P指定密码短语,特殊符号要转义,转义后密码/\[!’@wen12$
- # cp ~/.ssh/id_rsa.pub ~/.ssh/authorized_keys
- # chmod 600 ~/.ssh/authorized_keys
- (2)mac指定私钥连接linux服务器
- # ssh -p 22 -i /Users/wenqiang/Documents/myjumpserver/k8s-master-192.168.1.15-id_rsa root@192.168.1.15
- (3) 如果生成私钥时指定了密码短语,ssh登录linux服务器时会每次都询问密码,可以先在mac上添加私钥密码短语,然后再指定私钥连接linux服务器就不会每次都询问私钥密码了
- # ssh-add -K 私钥 # 执行该条命令会提示输入私钥密码并自动保存私钥密码到mac钥匙串中,如果更换了私钥只需要在执行改命令即可,执行ssh-add 后无需知道秘钥也可以直接登录linux服务器
复制代码 4、mac通过下令终端编写连接linux服务器工具
- wenqiang@wq password % cat ../myjumpserver
- #!/bin/bash
- # 修改或添加服务器信息需要改三处: 1>服务器数组列表 2>函数中case条件 3>私钥或密码文件名称
- # 公司服务器数组
- companyserverlist=(
- gitlib_北区微软-192.168.1.111
- esxi_腾讯云上海-192.168.1.112
- )
- # 个人服务器数组
- personserverlist=(
- etcd1_虚拟机-192.168.1.111
- etcd2-192.168.1.112
- etcd3-192.168.1.113
- )
- # 密码文件存放目录和私钥文件存放目录
- passdir='/Users/wenqiang/Documents/myjumpserver/password'
- privadir='/Users/wenqiang/Documents/myjumpserver/privatekey'
- # 登录公司服务器函数
- function companyserver(){
- select hosts in "${companyserverlist[@]}"
- do
- case ${hosts} in
- 'gitlib_北区微软-192.168.1.111')
- sshpass -f ${passdir}/${hosts} ssh -p 22 root@${hosts#*-} # ${hosts#*-}表示取变量开头到第一个-之外内容
- ;;
- 'esxi_腾讯云上海-192.168.1.112')
- ssh -p 22 -i ${privadir}/${hosts} root@${hosts#*-}
- ;;
- *)
- ;;
- esac
- echo "---enter选择公司服务器---"
- done
- }
- # 登录个人服务器函数
- function personserver(){
- select hosts in "${personserverlist[@]}"
- do
- case ${hosts} in
- 'etcd1_虚拟机-192.168.1.111')
- sshpass -f ${passdir}/${hosts} ssh -p 22 root@${hosts#*-}
- ;;
- 'etcd2-192.168.1.112')
- sshpass -f ${passdir}/${hosts} ssh -p 22 root@${hosts#*-}
- ;;
- 'etcd3-192.168.1.113')
- sshpass -f ${passdir}/${hosts} ssh -p 22 root@${hosts#*-}
- ;;
- *)
- ;;
- esac
- echo "---enter选择个人服务器---"
- done
- }
- select values in '公司服务器' '个人服务器'
- do
- case ${values} in
- '公司服务器')
- companyserver
- ;;
- '个人服务器')
- personserver
- ;;
- *)
- ;;
- esac
- done
- # 把myjumpserver脚本加入环境变量,重启终端生效
- wenqiang@wq ~ % cat ~/.zshrc
- MYJUMPSERVER="/Users/wenqiang/Documents/myjumpserver/"
- export PATH=$PATH:$MYJUMPSERVER
- # 查看效果
- wenqiang@wq ~ % myjumpserver
- 1) 公司服务器
- 2) 个人服务器
- #? 2
- ---按enter选择要登录的【个人服务器】---
- 1) k8s-master-192.168.1.15
- 2) k8s-node-192.168.1.16
- #? 1
- Last login: Sat Dec 2 20:06:22 2023 from 192.168.1.9
- [root@k8s-master ~]#
复制代码 免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |