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:能够在本地和远程,远程和远程之前进行文件传输。后续如果使用频繁会继续补充。

相关推荐
拼图20910 小时前
Git常用语法
分布式·git·学习
我要见SA姐111 小时前
用 Claude Code 重构遗留系统:从评估到落地的完整实践指南
数据库·ide·vscode·oracle·编辑器
ShineWinsu16 小时前
对于Git:基础操作的超详细保姆级解析
linux·c++·git·面试·备份·管理·版本控制器
00后程序员张17 小时前
Xcode vs KXApp,体积差几十G,选轻量方案还是完整工具链?
ide·vscode·ios·objective-c·个人开发·swift·敏捷流程
沉迷...17 小时前
Git skip-worktree 使用笔记(本地忽略配置文件)
javascript·git
解道Jdon19 小时前
JDK 27发布:紧凑对象头、G1默认、量子安全TLS
ide·windows·git·svn·eclipse·github·visual studio
天天喝旺仔1 天前
Git 内部原理深度解析:从 blob/tree/commit 对象到 packfile 与垃圾回收
数据结构·数据库·git·算法·哈希
艾莉丝努力练剑1 天前
【Git:综合复盘】Git 原理与使用
大数据·人工智能·git·elasticsearch·面试
lifewange2 天前
VSCode怎么运行java
java·ide·vscode
譕痕2 天前
Idea 集成 智能体开发工具“千问(qwen)”
java·ide·spring·语言模型