导航:首页 > 程序命令 > ssh命令长

ssh命令长

发布时间:2024-01-23 16:17:11

1. linux-两种ssh远程执行命令方式加载环境变量区别

最近在编写脚本的时候发现一个问题,在执行 kubectl -n kube-system get pods 这个命令的时候,通过 ssh root@ip command 和 ssh root@ip command 登录后执行得到了不同的结果,

从上面可以看到哪贺SSH远程执行获取pods失败了,但是shell窗口执行却成功了,所以我们可以猜到两者之间一定有什么区别导致结果的不同。那么区别在哪里呢?通过研究发现两者的环境变量存在区别,通过执行printenv可以查看所有设置的环境变量:

通过上面可以看到SSH远程执行的时候是没有KUBECONFIG这个环境变量,而Shell窗口是有的,为什么有这个区别呢?这就要从Linux的bash的四种模式说起。
bash的四种模式:

从上面可以看出不同方式下加载的配置文件不同,那么怎么知道我们是加载了那些配置文袜凯件呢? 这里有一个验证的方法,就是在上面的每个配置告缓唤文件中添加一句 echo $/etc/profile 这样的命令,把每个文件的路径打印出来。当配置文件被加载时,会输出相应的文件名,本例中在两个文件中加了该命令:/etc/pfoile, ~/.bashrc,然后使用不同SSH方式执行命令的结果如下。

只加载了.bashrc文件,未加载/etc/profile。

从输出可以看到两个配置都加载了,而KUBECONFIG只定义在/etc/profile中,没有定义在.bashrc文件中,所以通过 ssh root@ip command 执行时没有拿到KUBECONFIG这个环境变量从而导致报错。知道原因后我们就可以将KUBECONFIG环境变量添加到.bashrc文件即可。

2. 在linux-ubuntu系统中怎么访问局域网中到电脑

linux 之间互访,无需其他的辅助工具了,linux里默认安装的ssh便可以实现访问局域网间的linux系统,需要把ssh开启,命令:service sshd start ; ssh访问命令: ssh IP 根据提示输入用户名和密码,直接可以登录了(前提是两端都开启了ssh,并且防火墙没有关闭ssh),另外也可以用telnet,但由于它存在安全问题一般telnet默认关闭的,开启需要做配置,在此不做推荐。

linux 访问windows,推荐一款软件,rdesktop。安装了这个软件便可访问windows了。

3. ssh命令如何使用

ssh命令用于服务器的远程控制,一般情况下只要用“ssh IP地址”这样的格式就可以了,例如:“ssh 192.168.10.10”,可参考:第9章 使用ssh服务管理远程主机。

4. linux之ssh命令详解

ssh是什么呢? 👉网络上是这么说的

简单来说,在linux中SSH是非常常用的工具,通过SSH客户端我们可以连接到运行了SSH服务器的远程机器上,也就是说,我们可以通过ssh来远程控制我们的电脑或者服务器。那么ssh协议的优点就是数据传输是加密的,可以防止信息泄露,而且数据传输是压缩的,可以提高传输速度。

        它的命令格式是👉 ssh [-p port] user@remote

        user 是在远程机器上的用户名,如果不指定的话默认为当前用户

        remote 是远程机器的地址,可以是IP/域名,或者是别名

        port 是SSH Server监听的端口,如果不指定,就为默认值22

        (使用exit退出当前用户的登录)

        有关SSH配置信息都保存在用户家目录下的.ssh目录下

接下来,我们就来实际演示一下ssh命令的使用

首先我们需要两台linux系统的电脑来进行演示,所以我用虚拟机安装了两个linux的系统,分别命名为Deepin1和Deepin2(不得不说deepin真的是即好看又好用😄)

不过deepin操作系统默认ssh是没有开启的,我们需要手动将它开启。

第一步,在终端输入sudo apt-get install ssh安装ssh服务

第二步,在终端中输入sudo service ssh start开启ssh服务

注意:deepin1和deepin2都要执行上面两步来安装和开启ssh服务

安装并打开ssh之后,我们使用Deepin1来远程连接Deepin2,那么我们需要知道Deepin2的ip地址,在终端中输入ifconfig就可以知道当前机器的ip地址了,或者也可以直接把鼠标放到网络连接上,会直接显示出来。我这里Deepin2的IP地址为:192.168.56.132

然后,我们在Deepin1的终端中输入ssh -p 22 [email protected]然后回车

这里 -p 22 可以省略,22表示ssh的端口号为22, deepin2 为Deepin2的用户名, 192.168.56.132 为Deepin2的ip地址。

第一次连接,会弹出来是否连接的确认信息,我们输入yes确认,然后输入deepin2的密码并回车。出现如下界面就表示连接成功了。

连接成功后,我们尝试输入 cd Desktop/ 切换到桌面目录,然后输入 touch 123.txt 在桌面下创建123.txt文件

我们再切换到Deepin2系统中,发现桌面上的确出现了一个新的文件123.txt,大功告成!

到这里ssh的基本操作其实已经演示完了,但是我们发现每次远程登陆的时候都需要重新输入密码,稍微有点麻烦,其实我们可以通过设置,进行免密码登录。

免密登录:

第一步,配置公钥。在Deepin1终端中执行ssh-keygen即可生成SSH钥匙,一路回车即可。

第二步,上传公钥到服务器。在Deepin1终端中执行ssh--id -p port user@remotr(ssh--id -p 22 [email protected])可以让远程服务器记住我们。

第三步,设置完成了,试一下是否能免密登录呢?

可以看到,当我们远程登陆deepin2时,并没有输入用户密码就登陆成功了!其实挺简单的不是吗?

阅读全文

与ssh命令长相关的资料

热点内容
怎么关闭appstore 浏览:474
学编程入门语言 浏览:307
安卓机为什么总是出现升级提示 浏览:133
b树java实现 浏览:943
亚马逊云服务器到期了怎么续费 浏览:850
我的世界网易如何在服务器里面加光影 浏览:284
nat地址访问外网服务器 浏览:966
怎样用java编译一个心形 浏览:934
如何使用python中的pygame 浏览:836
python实用小工具 浏览:24
怎么在安卓手机上去除马赛克 浏览:235
农行浓情通app怎么下载 浏览:533
怎么把原文件夹找回来 浏览:535
俄罗斯方块实现python思路 浏览:735
汉语拼音英语编译代码 浏览:501
程序员应具备的能力 浏览:606
手机石墨文档文件夹访问权限 浏览:656
客户端如何登陆域文件服务器 浏览:530
两位数的平方计算法 浏览:930
android图片分块 浏览:716