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

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)

例如:
在这里插入图片描述

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之前。

推荐一个好用的软件 Winscp

下载地址:Winscp下载

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

命令格式:

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

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




更新

SSH分客户端openssh-client和openssh-server

如果你只是想登陆别的机器的SSH只需要安装openssh-client(ubuntu有默认安装,如果没有则sudo apt-get install openssh-client),如果要使本机开放SSH服务就需要安装openssh-server。

sudo apt-get install openssh-client 
sudo apt-get install openssh-server 

我们下载ssh后,需要配置一下ssh里面的内容

启动ssh方式,输入:

sudo /etc/init.d/ssh start 

停止和重启ssh服务的命令如下:

sudo /etc/init.d/ssh stop  #server停止ssh服务 
sudo /etc/init.d/ssh restart  #server重启ssh服务
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值