文章目录
前言
一、Linux是什么?
二、使用记录
1.SSH
SSH登录
SSH免密登录
SSH端口映射
总结
前言
Linux系统应用非常广泛,由于工作的需要,也开始接触并使用Linux,对于使用过程中遇到的一些问题,顺便也做一记录。
一、Linux是什么?
Linux是一个开源的操作系统内核,最初由芬兰的林纳斯·托瓦兹(Linus Torvalds)在1991年创建。它是基于UNIX操作系统的思想和设计原则,具有稳定性、可靠性和安全性。Linux内核可以运行在各种硬件平台上,包括个人电脑、服务器、移动设备和嵌入式系统等。由于其开源的特性,Linux能够被用户自由地修改、复制、分发和使用。
目前,Linux已经成为世界上最主流的服务器操作系统之一,同时也在个人电脑和移动设备领域得到了广泛应用。
二、使用记录
1.SSH
SSH即Security Shell(安全外壳),用来实现对服务器进行安全的访问。同时也可以应用于远程开发,如使用VSCode进行远程开发(相关环境资源在服务器)。默认ssh远程需要输入用户名密码,通过设置SSH密钥则可以实现免密登录。
SSH登录
ssh -p 端口 账号@服务器 -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null
ssh [user@]host:连接到远程主机。如果未指定用户名,则默认使用当前用户。
-p port:指定连接的远程主机的端口号,默认为22。
-i identity_file:指定用于身份验证的私钥文件。
这些只是SSH命令的一些常用参数,还有更多参数可以根据具体需求进行查阅和使用。
SSH免密登录
1、可以通过ssh-keygen生成密钥
这里我们使用RSA算法生成密钥,命令为:
ssh-keygen -t rsa
一路回车就可以了,有一个需要注意的就是,设置文件保存位置(一般Windows下在C:\Users\用户名\.ssh下),如果已有id_rsa文件,则需要重新制定文件名(用于给其他服务器设置密钥)
ssh-keygen常用参数包括:
-t:指定密钥类型,如dsa、ecdsa、ed25519、rsa。
-b:指定密钥长度。
-C:添加注释。
-f:指定保存密钥的文件名。
-i:读取未加密的ssh-v2兼容的私钥/公钥文件。
2、将公钥更新到服务器
如果是云服务器,一般会提供SSH公钥管理功能,新建公钥,将id_rsa.pub(公钥)文件内容复制到公钥文本框即可。.pub文件以记事本方式即可打开
如果是个人服务器,那么可以使用命令来操作:
1)将公钥文件复制到服务器,可以使用scp命令
scp -o StrictHostKeyChecking=no -r -P {端口} {本地目录} {远程账号}@{远程服务器}:{远程目录}
然后服务器操作,定位到~/.ssh目录(假定如下xx.pub即复制到服务器的公钥文件,authorized_keys文件存放的就是公钥信息)
cat xx.pub >> authorized_keys
3、本地有多个id_rsa的情况
这个时候文件名不是id_rsa的秘钥服务器是不会识别的,就是添加到服务器公钥,SSH的时候还是要输入密码。应该是SSH默认找的是id_rsa文件,如果是其他名称,则需要通过config(一般Windows下在C:\Users\用户名\.ssh下)文件进行设置
Host remote_server
HostName remote_server_address
User username
IdentityFile ~/.ssh/my_id_rsa
Host 指定了远程服务器的名称,这里设置为 remote_server。
HostName 指定了远程服务器的地址,这里设置为 remote_server_address,一般这两个一样的。
User 指定了远程服务器的用户名,这里设置为 username。
IdentityFile 指定了使用的私钥文件,这里设置为 ~/.ssh/my_id_rsa
SSH端口映射
服务器端口由于安全控制,无法直接对外开放的情况,可以将服务器端口映射到本地,方便本地测试访问服务器端口
只需在如上ssh命令增加 -L选项,
-L 本地端口:服务器端口
总结
以上就是今天要讲的内容,本文主要介绍了Linux使用过程中记录的一些使用技巧,并且随着使用的增多还会不断更新内容。