ssh 基本用法与免密登录

基本用法

远程连接服务器:
ssh user@hostname

  • user:用户名
  • hostname:IP地址或域名

举个例子,假设我们的user是tom,hostname是123.45.67.890

可以输入:ssh tom@123.45.67.890 第一次登陆时会提示:
The authenticity of host '123.45.67.890 (123.45.67.890)' can't be established.
ECDSA key fingerprint is SHA256:iy237yysfCe013/l+kpDGfEG9xxHxm0dnxnAbJTPpG8.
Are you sure you want to continue connecting (yes/no/[fingerprint])

输入yes,然后继续回车即可。

这样会将该服务器的信息记录在~/.ssh/known_hosts文件中。

再输入密码即可远程登录到服务器中。


配置别名登录文件

我们每次可以使用基本用法 里的登录方式,用户名和IP\域名,这样一大长串不太方便。因此,我们来配置服务器别名,假设就叫student1。

创建文件~/.ssh/config,然后在文件中输入:

复制代码
Host student1
	Hostname 123.45.67.890
	User tom

之后再想登录该服务器的tom用户时,可以直接输入ssh student1,再输入密码就可以了。


免密登录

现在有了别名登录方便多了,可每次登录都要输入密码还是不太好,接下来配置免密登录。

在本次配置密匙:
ssh-keygen

然后一直回车即可。执行结束后,~/.ssh/目录下会多出两个文件:

  • id_rsa:私钥
  • id_rsa.pub:公钥
    这个公钥是可以重复利用的,之后想远程登录到哪个服务器就可以将公钥传到该服务器
    例如,想免密登录student1服务器,可以将公钥中的内容,复制到student1中的~/.ssh/authorized_keys文件即可。
    也可以使用如下命令一键添加公钥:
    ssh-copy-id student1

以上就是关于ssh比较基础的配置和用法,与ssh相关的还有一个比较好的工具scp:能够在本地和远程,远程和远程之前进行文件传输。后续如果使用频繁会继续补充。

相关推荐
疏狂难除2 小时前
JetBrains IDE插件开发教程(五)——File Header
ide·kotlin
qq_452396233 小时前
第六篇:《GitLab CI 进阶:多环境部署与环境变量管理》
git·ci/cd·gitlab
浮江雾6 小时前
Flutter第五节------Flutter开发环境配置与项目创建指南
开发语言·前端·git·学习·flutter·入门·函数
harmful_sheep9 小时前
idea相关设置
java·ide·intellij-idea
aramae11 小时前
C++11:现代C++的里程碑
c语言·开发语言·c++·windows·git·后端
蓝冰凌12 小时前
vscode 用户级 settings.json
ide·vscode·json
九九落12 小时前
VSCode AI编程完全指南:从环境搭建到实战应用
ide·vscode·ai编程
BerryS3N13 小时前
VS Code Git 工作树:解锁多分支并行开发新体验
大数据·git·elasticsearch
工具派15 小时前
从 git commit 到交付 PDF:我的一条在线工具流实录
git·elasticsearch·pdf
咋吃都不胖lyh1 天前
提交(Commit)到本地的 Git 仓库,然后才能推送(Push)到远程的 Git 仓库
git