在本文中将讲述linux服务器、window电脑的详细设置,一步一步部署,教程包括:在linux服务器和window客户端ssh设置、免密设置、xming图像访问。
SSH 是为建立在应用层基础上的安全协议。SSH 是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。
在linux的服务器中安装ssh、openssh-server,并开启ssh服务。如果没有开启ssh服务,无法进行远程连接终端。
由于在linux系统中,默认会安装ssh,先需要确定是否有安装ssh,运行以下代码:
sudo ps -e |grep ssh
如果输出的结果如图一,则说明ssh没有安装:
如果输出的结果如图二,则说明ssh安装成功:
注释:只有ssh-agent的第一行,但是没有第二行,则ssh安装成功,openssh-server没有安装
安装ssh的命令如下:
yum install ssh
当输入sudo ps -e |grep ssh,没有输出sshd的一行时,则需要手动安装openssh-server,安装命令如下:
sudo apt-get install openssh-server
如果没有安装openssh-server,直接远程连接时,会出现Unit sshd.service could not be found.的错误
启动ssh命令:service sshd start
停止ssh命令:service sshd stop
获取服务器的ip命令:ipconfig
上面的两个红色框是远程连接需要的用户名和ip地址
1、vscode是利用ssh远程连接linux的,所以首先确保vscode已经安装了这两个插件
2、安装后会出现远程资源管理器
3、在弹出的config文件种添加以下代码,并保存
注释:Host 后面的名字随便取,HostName后面的是远程服务器的ip地址,User后面的是服务器中linux的用户名
4、在ssh target中会出现ken的一个远程设备,右键,根据自己的需求再选择一个来点击
5、一开始连接会出现选择平台的选项,由于本文的服务器是linux,所有我就选择linux
6、输入一下服务器的密码
7、远程连接成功
注释:此时每次连接时,都需要输入密码,这有点繁琐。下面是实现免密码连接的操作
1、在服务器中生成私钥和公钥
ssh-keygen -m PEM -t rsa -C "mykey"
注释:直接点击Enter键,不做任何的修改
2、将公钥输出到authorized_keys
cat id_rsa.pub >> authorized_keys
3、将服务器的ssh私钥文件下载到自己window电脑上,保存地址放在C:\Users**.ssh,如果没有这个路径的话,可以保存在其他路径
4、在window电脑中vscode的ssh配置文件中添加IdentityFile的路径
5、这样就可以实现免密码连接(第一次仍需要输入密码)
参考连接:
快速配置ssh远程开发 让VScode远程开发得心应手
1、在window电脑下载并安装xming
安装xming后,在安装目录中找到X0.hosts
2、第二行添加linux服务器的ip地址
3、打开xlaunch.exe,记得要将Display number设置为0(这里的0对应X0.host中的0),然后都点击下一步
4、打开xming.exe
5、在linux服务器安装Remote X11,在window电脑中安装Remote X11(SSH)
6、在window电脑中vscode的ssh配置文件中三行代码
7、连接远程服务器,在远程服务器的终端输入如下代码
export DISPLAY="192.168.0.9:0.0"
注释:
1)这是192.168.0.9是window电脑的ip地址,按照你自己电脑的ip地址来修改
2)0:0这是xming的默认设置而来的
3)这里会出现没新打开一个终端,需要都输入export DISPLAY=“192.168.0.9:0.0”。你也可以将这一条代码放在~/.bashrc文件中,这样就不需要每次打开新的终端,都输入export DISPLAY=“192.168.0.9:0.0”。
8、在终端输入xclock,会弹出一个时钟
注释:
1)如果长时间没反应,可以是你xming.exe没打开,打开ximg.exe一下。如果还不行,重启电脑试试
2)如果出现Error: Can’t open display: 192.168.0.119:0.0的错误,则可能是ip地址设置有问题,或者0.0设置错了