ssh用户与本地用户_ssh和scp的使用

ssh使用别名和实现免密登录

ssh远程登录可以输入命令

# usr_name是用户名,ip_addr是ip地址,domain_name是域名

然后输入密码即可远程登录linux机器。

  1. 如何设置免密登录?

具体方法是将自己本地的公钥导入在服务器端~/.ssh/authorized_keys

首先在本地生成公钥和私钥

$ ssh-keygen

然后在本地会生成.ssh目录,目录中会生成id_rsa和id_rsa.pub文件,我们看一下目录结构

0 directories, 

config是ssh配置文件

known_host是保存到公钥,ssh会把每个你访问过计算机的公钥(public key)都记录在~/.ssh/known_hosts

可以输入ssh-copy-ip直接上传公钥,也可以连接服务器以后直接复制id_rsa.pub粘贴到~/.ssh/authorized_keys文件中

$ ssh-copy-id user_name@ip_addr/domain_name

运行这条命令后服务器会在家目录下生成.ssh目录,把本地公钥写入authorized_keys文件,这里会需要再输入一次密码。

  1. 如何为服务器设置别名?

在本地.ssh目录下写入config文件

b56a58e3347c5d0438fdb1416aafad06.png

然后可以通过

$ ssh alias_name

达到

$ ssh user_name@ip_addr/domain_name

的效果,并且实现免密登录。


ssh相关配置

  1. 设置是否可以使用密码登录,对指定用户是否可以使用密码登录?

禁止密码登录的目的是为了安全,可以设置只允许密钥登录,这样即使密码被泄露别人也无法登录。可以通过修改配置文件实现。

$ sudo vi /etc/ssh/sshd_config

PasswordAuthentication 默认是yes,可以改为no,以禁止密码登录,但是必须注意,更改为no前必须确保已经设置通过秘钥实现免密登录。

对指定用户的设置可以在最后加上

#所有和此用户相关的配置都可以放在这里

比如同一个系统中有多个用户,可以配置所有用户可以密码登录,而root用户的PasswordAuthentication设置为no,root用户只能用秘钥登录保证安全。

  1. 端口设置
#port_number是想更改的端口号

设置以后,务必运行

$ sudo sudo service ssh restart

重启ssh服务,以使配置生效。

更改端口后连接Linux需要使用

$ ssh user_name@ip_addr/domain_name -p port_number

或者在.ssh/config中加入Port,继续使用别名

650660879da43b446757cc9ffdef5d1e.png

scp传输文件和文件夹

#向远端传文件
$ scp 

usr_name是用户名

ip_addr是ip地址

domain_name是域名

当不输入user_name的时候会默认使用本地用户名

dir是文件目录

file_name是文件名

如果传输的是文件夹需要加上-r参数,传送文件不用

同样的,每次输入ip地址或者域名都太复杂了,刚刚的~/.ssh/config文件还在,完全可以执行

[-r

进行传送文件。

远端dir如果值为空,默认传输到服务器用户的家目录下

[-r
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值