【计算机教育中缺失的一课】ssh远程连接主机

【计算机教育中缺失的一课】ssh远程连接主机,第1张

【计算机教育中缺失的一课】ssh远程连接主机 什么是ssh

Secure Shell(安全外壳协议,简称SSH)是一种加密的网络传输协议,可在不安全的网络中为网络服务提供安全的传输环境。SSH通过在网络中创建安全隧道来实现SSH客户端与服务器之间的连接

SSH最常见的用途是远程登录系统,利用SSH来传输命令行界面和远程执行命令非常常用

举个例子,不管你使用Windows系统还是macOS,都可以使用ssh远程连接Linux服务器,从而在你自己的主机上,运行Linux系统环境,或者完成文件的互传

比如笔者有一台Ubuntu的云服务器和一台装了Debian系统的surface,可以用我的主力台式机使用ssh很方便的管理这两台机器

安装openssh

你的被连接的主机必须要安装openssh服务,比如我要连接到我的Debian或者Ubuntu,那么他们都需要安装openssh

Debian或者Ubuntu的安装如下:

sudo apt-get install openssh

启动服务:

sudo service sshd start

查看是否已经启动:

ps -ef | grep sshd
基于口令的远程ssh连接

只需在命令行输入

ssh user@hostname

user处填写用户名,hostname处填写IP地址或域名

如下图所示,我的用户名是zarathustra,ip是192.168.13.113如果是连接远程服务器的话,且已绑定域名,可以把ip替换为域名

这里会有一个确认的流程,输入yes后即为确认,之后输入密码,即可实现基于口令的ssh连接

基于RSA配置文件的ssh连接

这种方法更适用于和服务器进行ssh连接,因为服务器ip是公网ip,ip是不变的

但是如果是和局域网内的主机ssh连接,由于局域网内ip易于变动,则不推荐这种方式

生成公钥与私钥:

使用key-gen命令生成公钥与私钥

$ ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/c/Users/xxx/.ssh/id_rsa):

之后一直回车即可创建完成rsa公钥与私钥,文件默认被存储到.ssh目录下

配置authorized_keys:

需要将上述步骤中生成的公钥(.pub文件)写入到远程服务器的 ~/.ssh/authorized_keys文件中

如果远程系统上的帐户中尚未包含~/.ssh/authorized_keys文件,则需要手动创建

mkdir -p ~/.ssh
touch ~/.ssh/authorized_keys

至此,可以通过ssh user@ip 访问远程服务器

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5704035.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存