ssh远程管理服务配置

##sshd远程连接的优化

版主QQ:2559721591    资料网站:http://rshare.ys168.com

网络环境:

ssh服务器(虚拟机):192.168.10.25

ssh客户机(物理机):192.168.10.1

ssh:是安全的外壳的缩写(Secure Shell)。是专门为远程登录会话和其他网络服务提供安全性的协议。

linux的ssh远程登录软件:openssh,默认端口是22。

显示远程连接过程:ssh  -v  [email protected]

#软件安装

yum  install  -y  openssh-server  openssh-clients  openssh

说明:服务端:openssh-server

客户端:openssh-clients

通用程序:openssh

密钥验证:openssh-askpass

服务基本管理:

重启服务:service  sshd  restart

设为开机启动:chkconfig   sshd  on

常用命令:ssh、scp、ssh-keygen、ssh-copy-id、sftp

ssh远程登录:

语法:ssh   [选项]  用户@远程IP   [命令]

选项:-v  显示过程

例:远程执行命令:ssh  [email protected]   ‘ls /;ifconfig‘

远程登录:ssh  [email protected]

scp命令:

功能:采用ssh协议上传、下载文件。

语法:scp  -rv   源文件    目标文件

选项:-r 递归复制目录     -v 显示过程    -P 指定端口

实例:上传本机/etc目录到[email protected]:/tmp/目录。

scp  -rv  /etc   [email protected]:/tmp/       //上传文件

ssh  [email protected]   ls  /tmp/et*         //验证结果

实例:上传[email protected]:/etc目录到本机/opt目录。

scp  -rv  [email protected]:/etc   /opt/       //下载文件

ls   /opt/      //验证结果

#问题:ssh服务连接慢的解决。

说明:sshd_config是服务器配置,ssh_config是客户端配置文件。

首先:vi  /etc/ssh/sshd_config 修改如下内容:

UseDNS  no     //禁用DNS解析功能(122行)

GSSAPIAuthentication   no    //禁用GSSAPI授权功能(81行)

然后:vi  /etc/ssh/ssh_config    //客户端配置文件,修改如下内容:

GSSAPIAuthentication   no    //禁用GSSAPI授权功能(81行)

最后:1、重启sshd服务:service  sshd  restart

2、用客户机远程登录测试:ssh  [email protected]   ifconfig

##需求:实现ssh免密码远程登录。采用id_rsa私钥、id_rsa.pub公钥文件自动验证功能。

RSA签名和验签过程:

1.签名过程:

client提取消息m的消息摘要h(m),并使用自己的私钥对摘要h(m)进行加密,生成签名s。

client将签名s和消息m一起,使用server发过来的公钥进行加密,获得密文c,发送给server。

2.验签过程:

server接受到密文后,用自己的私钥对其解密,获得明文消息m和签名s。

server使用client的公钥解密数字签名s,获得消息摘要h(m)。

server使用相同的方法提取消息m的消息摘要h(m)与上一步解密得到的h(m)进行比较,如果相同则验签成功。

公钥和私钥须知:

A、公钥是给别人的:

1、发送密文使用公钥加密

2、验证签名使用公钥验证

B、私钥是自己保留的

1、接受密文使用私钥解密

2、发送签名使用私钥签名

注意:上述过程逆转是不行的,比如使用私钥加密,使用公钥解密是不行的。

实现思路:1、在客户机用ssh-keygen生成id_rsa私钥、id_rsa.pub公钥文件。

2、将客户机的id_rsa.pub公钥文件上传给ssh服务器指定的用户家目录。

3、在客户机远程登录,测试是否免密码登录。

注意:公钥和私钥验证是识别身份是根据客户机的主机名来确认。上传客户机的公钥后,一定不要再修改客户机的主机名,否则公钥和私钥无法认证。

实施步骤:

1、在客户机生成公钥和私钥(交互式):ssh-keygen  -t  rsa

(非交互):ssh-keygen  -t  rsa  -f  ~/.ssh/id_rsa  -N  ‘‘

选项说明:-t指定加密算法    -f指定密钥文件   -N指定加密密码

#生成成对的公钥和私钥密钥。

Generating public/private rsa key pair.

Enter file in which to save the key (/root/.ssh/id_rsa):回车

#这里需要输入两次密钥验证密码 这里我们不在设置

Enter passphrase (empty for no passphrase):回车(空密码)

Enter same passphrase again:回车(空密码)

+

#私钥保存路径及文件名

Your identification has been saved in /root/.ssh/id_rsa. 回车

+

#公钥保存路径进文件名

Your public key has been saved in /root/.ssh/id_rsa.pub. 回车

The key fingerprint is:以下为密钥指纹标识符

aa:0e:89:eb:83:55:44:d1:a1:ed:2d:81:aa:4e:47:29 [email protected]

2、在客户机上传公钥给服务器:

方法一:ssh-copy-id   [email protected]

方法二:ssh-copy-id   -i  ~/.ssh/id_rsa.pub   [email protected]

3、在客户机测试远程控制:ssh   [email protected]   ifconfig

附加任务:扫描192.168.10.25主机上的key文件内容。

ssh-keyscan  192.168.10.25

#ssh服务端配置文件安全加固。

#修改服务器主配置文件:vi  /etc/ssh/sshd_config

Port 22

ListenAddress 0.0.0.0

Protocol 2

HostKey /etc/ssh/ssh_host_rsa_key

HostKey /etc/ssh/ssh_host_dsa_key

#LoginGraceTime  2m     //登录宽限期为2分钟

#PermitRootLogin yes    //允许root登录

#StrictModes yes  //yes必需保证存放公钥的目录的属主与登陆用户名是相同的

#MaxAuthTries 6    //密码错误重试6次

#MaxSessions 10    //最大10个会话

#RSAAuthentication yes        //启用RSA验证

#PubkeyAuthentication yes     //启用公钥验证

#AuthorizedKeysFile     .ssh/authorized_keys    //公钥保存的文件

#PermitEmptyPasswords no      //禁止空密码登录

PasswordAuthentication yes     //启用密码验证

Subsystem       sftp    /usr/libexec/openssh/sftp-server     //启用子系统sftp共享服务

#sftp客户端

功能:采用sftp协议登录到ssh服务器,访问服务器上的文件,在服务器和客户机之间传输文件(上传、下载)。

语法:sftp   用户名@远程IP

实例:sftp   [email protected]

常用命令:

说明:sftp登录成功后,可以执行大多数文件管理的shell命令。

help或?      //显示命令帮助

pwd      //显示服务器工作路径

!pwd     //显示本地工作路径

ls       //显示服务器当前目录的文件列表

cd   /tmp     //切换服务器路径到/tmp目录

!ls           //查看本地文件列表

lcd  /etc     //切换本地路径到/etc

get  源   目标     //下载文件

put  源   目标     //上传文件

bye     //退出登录

服务器端配置文件小结:

[[email protected]localhost ~]# vim /etc/ssh/sshd_config 配置文件中主要的三部分内容如下

1、常见SSH服务器监听的选项如下:

Port 22                    //监听的端口为22

Protocol 2                //使用SSH V2协议

ListenAdderss 0.0.0.0    //监听的地址为所有地址

UseDNS no                //禁止DNS反向解析

必做:找到UseDNS选项,默认为yes,会影响连接速度,将yes改为no。

2、常见用户登录控制选项如下:

PermitRootLogin no            //禁止root用户登录

PermitEmptyPasswords no        //禁止空密码用户登录

LoginGraceTime 2m            //登录验证时间为2分钟

MaxAuthTries 6                //最大重试次数为6

AllowUsers user            //只允许user用户登录,与DenyUsers选项相反

3、常见登录验证方式如下:

PasswordAuthentication yes                //启用密码验证

PubkeyAuthentication yes                    //启用秘钥验证

AuthorsizedKeysFile .ssh/authorized_keys    //指定公钥数据库文件

时间: 2024-10-31 06:21:13

ssh远程管理服务配置的相关文章

SSH远程管理服务

作者:Georgekai 归档:学习笔记 2018/1/29 SSH远程管理服务 1.1 SSH服务介绍说明 Secure shell protocol--安全的shell协议 SSH:先对要传输的数据包进行加密处理,然后在进行数据传输,确保了数据的安全 telnet:用于远程连接控制,但不对数据传输进行加密 1.1.1 SSH服务主要提供的两个功能: 1. 远程连接 2. 远程文件传输:如sftp 1.1.2 SSH连接排错思路 1. ping 172.16.1.41 traceroute 1

Linux(11):期中架构(3)--- SSH远程管理服务 & ansible 批量管理服务

SSH远程管理服务 1. 远程管理服务知识介绍 # 1.1 SSH远程登录服务介绍说明 SSH是Secure Shell Protocol的简写,由 IETF 网络工作小组(Network Working Group)制定: 在进行数据传输之前,SSH先对联机数据包通过加密技术进行加密处理,加密后在进行数据传输.确保了传递的数据安全. SSH是专为远程登录会话和其他网络服务提供的安全性协议. 利用SSH协议可以有效的防止远程管理过程中的信息泄露问题,在当前的生产环境运维工作中, 绝大多数企业普遍

SSH远程管理服务实战

目录 SSH远程管理服务实战 1.SSH基本概述 2.SSH相关命令 3.Xshell连接不上虚拟机 4.scp命令 5.sftp命令 6.SSH验证方式 7.SSH场景实践 8.SH安全优化 9.交互expect[扩展] 10.免交互sshpass[扩展] SSH远程管理服务实战 1.SSH基本概述 SSH是一个安全协议,在进行数据传输时,会对数据包进行加密处理,加密后在进行数据传输.确保了数据传输安全.那SSH服务主要功能有哪些呢? 1.提供远程连接服务器的服务2.对传输的数据进行加密 那么

linux运维、架构之路-SSH远程管理服务

1.SSH服务功能介绍 1.远程登录管理 提供类似telnet远程联机服务器的服务,即上面提到的SSH服务: 2.远程传输文件 是类似FTP服务的sftp-server,借助SSH协议来传输数据的,提供更安全的SFTP服务(vsftp,proftp) 3.ssh服务连接工具 CRT.xshell.vnc支持远程连接图形化界面.xmanger支持远程连接图形化界面(配置简单) 2.SSH远程服务特点 1.ssh服务端口信息为22 2.ssh采用密文方式传输数据 3.ssh服务默认支持root用户进

6. SSH远程管理服务实战

1. SSH基本概念? ssh是一个应用层安全协议 2.SSH主要的功能是? 实现远程登录, 数据传输过程中进行加密. 钉钉(澡堂模式) 远程登录: ssh telnet 3.SSH与Telnet之间有什么区别? 服务连接方式 服务数据传输 服务监听端口 服务登陆用户 ssh 加密 22/tcp 默认支持root用户登陆 telnet 明文 23/tcp 不支持root用户登陆 4.抓包分析SSH与Telnet的区别? 所需工具:Wireshark [[email protected] ~]#

聊一聊CenOS 7中SSH远程管理的配置

在CenOS 7系统中,OpenSSH服务器是由系统盘中的openssh.openssh-server等软件包提供的(默认已经安装),并且已经将sshd添加为标准的系统服务,可以执行systemctl status sshd来查看服务的状态.只要拥有合法的登录shell,在不考虑安全限制的情况下,都可以远程登录操作系统. sshd服务的配置文件默认位于 /etc/ssh/sshd_config目录下,其中有很多配置项用来控制连接本服务器的.大概可以分为三个方面,如下所示: 1.服务器监听相关设置

SSH远程管理、参数讲解、xshell使用、scp,sftp,ssh命令(ssh两种方式的密钥验证方

1.SSH远程管理 SSH(Secure Sheel)是一种安全通道协议,主要用于实现字符界面的远程登录.远程复制等功能.SSH协议对通信双方的数据传输进行了加密处理,其中包括用户的口令.与早期的TELNET(远程登录,tcp23端口).RSH(Remote Sheel,远程执行命令).RCP(Remote File Copy,远程文件复制)等应用想必,SSH协议提供了更好的安全性. 配置OpenSSH服务端(由openssh.openssh-server软件包提供.主配置文件/etc/ssh/

Linux服务器ssh远程管理

SSH远程管理 SSH(Secure Shell)是一种安全通道协议,主要用来实现字符界面的远程登陆,远程复制等功能.SSH协议对通信双方的数据传输进行了加密处理,其中包括用户登陆时输入的用户口令,与早期的telnet(远程管理),rsh(Remote Shell ,远程执行命令),rcp(远程复制文件)等应用相比,SSH协议提供了更好的安全性. 配置OpenSSH服务端 在RHEL 5系统中,OpenSSH服务器由openssh,openssh-server等软件包提供(默认已安装),并已将s

Linux SSH端口更改和SSH远程连接服务慢原因排查

Linux SSH端口更改和优化 为什么需要更改SSH默认连接端口 Windows服务器的默认远程管理端口是3389,Linux服务器的默认端口是22.如果在公网上,经常会被工具扫,这是不安全的,为了系统安全,需要更改默认的配置. Linux 6 操作过程 更改配置文件 # cp /etc/ssh/sshd_config /etc/ssh/sshd_config.ori 更改配置前备份 # vi /etc/ssh/sshd_config 编辑sshd_config ####添加如下内容####