Linux SSH远程管理

配置OpenSSH服务端

SSH服务及配置文件

SSH概述

SSH是一种安全通道协议,默认使用TCP22号端口,主要用来远程登录和远程复制等功能,它给通信双方的数据传输进行了加密处理,相比于telnet这种明文传输的额远程登录提供了很好的安全性

服务名称:sshd(CentOS6.5后默认安装开启)
服务端配置文件:/etc/ssh/sshd_config
客户端配置文件:/etc/ssh/ssh_config

查看服务监听选项

服务器端

[root@server ~]# vim /etc/ssh/sshd_config
17 #Port 22 :端口号。可改为乱序的。让别人无法攻击。客户端和服务器的端口号一直时,可以不用 -p.
37 #LoginGraceTime 2m :登陆超时时间:2min。超过时间断开连接
38 #PermitRootLogin yes :允许root登陆。yes。
40 #MaxAuthTries 6 :默认最大尝试次数。客户端默认尝试3次。将客户端默认数调大可以尝试6次。
43 #PubkeyAuthentication yes :默认开始公钥认证。

63 #PasswordAuthentication yes :密码认证
64 #PermitEmptyPasswords no :允许空密码登陆 

96 UsePAM yes :
115 #UseDNS yes :默认使用dns:使用时需要查询DNS,实验时可以关掉。
116 #PidFile /var/run/sshd.pid :sshd.pid:每起一个进程存放进程的PID号。
登陆验证方式

sshd服务支持两种验证方式:密码验证 ,密钥对验证。

1 密码验证:
以服务器中本地系统用户的登录名称,密码进行认证,这种方式安全性较低
2 密钥对验证
要求提供相匹配的密钥(公钥,私钥)来通过验证,分为两种
(1)对称加密:采用单密钥系统加密方法,同一密钥用于信息的加密和解密,优点加密速度和效率很快,缺点是容易被破解,不是很安全。
(2)非对称加密:采用公开密钥和私有密钥两种密钥加密,两种密钥成对生成,可以互相加密解密,公钥对外公开,私钥只有持有人才知道。

使用SSH客户端程序

SSH概述

OpenSSH客户端由openssh-clients提供。默认已安装,其中包括ssh远程登陆命令。以及scp,sftp远程复制和文件传输命令。

命令程序

ssh远程登陆
通过ssh命令可以远程登陆sshd服务。
在这里插入图片描述

  • ssh root@192.168.108.104 -p 1314 :登陆服务器。-p 1314 :指定端口号 。默认22.
    客户端和服务器的端口号一致时,可以不用 -p
    退出:exit
    在这里插入图片描述
    可以修改黑白名单远程登陆不了指定用户
    在这里插入图片描述
    Allowusers 白名单:
    Denyusers :黑名单。黑名单优先。

设置完成后重启sshd
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
zhangsan@192.168.108.103:限定tom从哪个客户端登陆。
一般设置白名单。只有白名单中的可以登陆。

scp远程复制
使用scp命令进行复制时必须指定复制源,目标。

将远程server的/opt目录下的test.server文件复制到本机/opt下并改名为test.client
在这里插入图片描述

将本机/opt下的test.client复制到远程server的/opt下
在这里插入图片描述
在这里插入图片描述

-r: 递归复制整个目录。
-p:带属性传输
-P:指定端口
scp -P 1314 -rp xzw/ root@192.168.108.104:/opt:将xzw/目录传输到IP为104的,端口号为1314的服务器上的/opt目录下。

sftp安全ftp
通过sftp可以利用ssh安全连接与远程主机上传,下载文件。采用了与FTP类似的登陆过程和交互模式环境。便于目录资源管理
在这里插入图片描述
上传文件:put
在这里插入图片描述
在这里插入图片描述
退出:bye
在这里插入图片描述
下载文件:get
在这里插入图片描述
lcd:打开本机目录
lls:查看本机目录下内容

免密登陆

1.在客户端构建密钥对

通过keygen工具为当前用户创建密钥对文件。可用的加密算法为RSA或DSA
ssh-keygen -t rsa :指定加密算法为rsa
输入命令 ssh-keygen 在这里插入图片描述
确认生成的密钥文件
在这里插入图片描述
id_rsa:为私钥文件,id_rsa.pub为公钥文件用来提供给服务器

查看密钥:[root@client ~]# vim /root/.ssh/id_rsa
在这里插入图片描述

2.将公钥文件上传到服务器
[root@client ~]# scp ~/.ssh/id_rsa.pub root@192.168.108.104:/tmp
root@192.168.108.104's password: 
id_rsa.pub                                           100%  393   314.5KB/s   00:00    
[root@client ~]# 

或:

[root@client ~]# ssh-copy-id -i ~/.ssh/id_rsa.pub zhangsan@192.168.108.104

3.在服务器中导入公钥文本

在服务器中,用来远程登陆的账号打公钥数据库位于~/.ssh目录,默认文件名是:authorized_keys。当获得客户机发送过来的公钥文件后,可以通过重定向将公钥文件文件内容追加到目标用户的公钥数据库中。

cat known_hosts:查看与谁建立过连接
在这里插入图片描述

在这里插入图片描述

4.在客户端使用密钥对验证

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值