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

相关推荐
goodspeed2 天前
Git Worktree:多分支并行开发的利器
git·github
雮尘3 天前
让 AI Agent 高效并行开发的命令-git worktree
人工智能·git·agent
南果梨4 天前
OpenClaw 完整教程!从安装到使用(官方脚本版)
前端·git·开源
Selicens5 天前
git批量删除本地多余分支
前端·git·后端
闲云一鹤6 天前
Git LFS 扫盲教程 - 你不会还在用 Git 管理大文件吧?
前端·git·前端工程化
vibecoding日记9 天前
为什么我就想要「线性历史 + Signed Commits」,GitHub 却把我当猴耍 🤬🎙️
git·编程工具
程序员小崔日记9 天前
如何将代码轻松上传到 Gitee?Git 使用全攻略!
git·gitee·上传
Bigger10 天前
为什么你的 Git 提交需要签名?—— Git Commit Signing 完全指南
git·开源·github
DianSan_ERP11 天前
电商API接口全链路监控:构建坚不可摧的线上运维防线
大数据·运维·网络·人工智能·git·servlet