《Linux》day5--ssh——ssh登录与scp传文件

文章目录

    • ssh登录
      • 基本用法
      • 配置文件
      • 密钥登录
      • 执行命令
    • scp传文件
      • 基本用法
      • 使用scp配置其他服务器的vim和tmux

ssh登录

基本用法

远程登录服务器。

ssh user@hostname

其中:

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

第一次登录会提示:

The authenticity of host '123.57.47.211 (123.57.47.211)' 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_host 文件中。然后我们输入密码就可以登录到远程服务器中

默认登录端口号为22,如果想登录到某一特定的端口:

ssh user@hostname -p 22

配置文件

刚开始我们的ssh里面的配置都是初始化的,相当于是毛坯房,没有特殊的功能,比如tmux无法按照指定功能键分屏,vim无法显示行号等等;我们需要自己来手动配置文件。

创建文件: ~/.ssh/config(在。ssh里面用vim创建文件config)

然后在文件中输入:

Host myserver
	HostName IP地址或域名
	User 用户名

这样,我们在之后登录服务器时,直接输入 ssh myserver就可以登录服务器了。

密钥登录

如果我们的服务器比较多,每次连接一个服务器都需要输入密码会很浪费时间,我们可以来设置免密登录。

创建秘钥:ssh-keygen

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

  • id_rsa:私钥
  • id_rsa_pub:公钥

之后想免密登录哪个服务器,就将公钥传给哪个服务器即可。

例如:我们想免密登录 myserver 服务器,那么就将公钥中的内容,复制到 myserver 中的 ~/.ssh/authorized_keys (在.ssh里面 vim一个authorized_keys,将公钥id_rsa-pub里面的内容复制到这里面)文件里即可。(ssh里面没有.ssh文件夹的用mkdir创建一个,然后在.ssh里面vim一个authorized_keys)

也可以使用如下命令一键添加公钥:

ssh-copy-id myserver

执行命令

命令格式:

ssh user@hostname command

例如:

ssh user@hostname ls -a

也可以获取sdout:注意ssh中单引号’可以求$i的值,双引号"不可以,与shell语言不同(原因:我们之前知道,双引号回转义 $i 的值,所以传过去的命令是 echo i,而不是 echo $i,而单引号不会转义,所以传过去的就是 echo $i)

例如:
《Linux》day5--ssh——ssh登录与scp传文件_第1张图片

scp传文件

基本用法

命令格式:

scp source destination

将source路径下的文件复制到destination中

也可以一次复制多个文件

scp source1 source2 destination

复制文件夹:

scp -r ~/tmp myserver:/home/acs/

将本地家目录中的tmp文件夹复制到myserver服务器中的/home/acs/目录下。

scp -r ~/tmp myserver:homework/

将本地家目录中的tmp文件夹复制到myserver服务器中的~/homework/目录下。

scp -r myserver:homework .

将myserver服务器中的~/homework/文件夹复制到本地的当前路径下。

scp -P 22 source1 source2 destination

我们也可以只在指定端口下复制:

注意: scp中的 -r -P 等参数必须加在source和destination之前。

使用scp配置其他服务器的vim和tmux

命令格式:

scp ~/.vimrc ~/.tmux.conf myserver:

我们使用 scp 把 .vimrc 和 .tmux.conf 传到我们的 myserver 服务器上去就行了

你可能感兴趣的:(《Linux篇》,linux,ssh,服务器)