一、初始SSH

SSH是标准的网络协议,可用于大多数UNIX操作系统,能够实现字符界面的远程登录管理,它默认使用22号端口,采用密文的形式在网络中传输数据,相对于通过明文传输的Telnet,具有更高的安全性。

SSH提供了口令和秘钥两种用户验证方式,这两者都是通过密文传输数据的。

不同的是,口令用户验证方式传输的是用户和密码,这要求输入的密码具有足够的复杂度才能具有更高的安全性。

而基于密钥的安全验证必须为用户自己创建一对密钥,并把共有的密钥放在需要访问的服务器上,当需要连接SSH服务器上时,客户端软件会向服务器发出请求,请求使用客户端的密钥进行安全验证。服务器收到请求之后,先在该用户的根目录下寻找共有密钥,然后把它和发送过来的公有密钥进行比较。如果两个密钥一致,服务器就用公有的密钥加密“质询”,并把它发送给客户端软件。客户端收到质询之后,就可以用本地的私人密钥再把它发送给服务器。这种方式是相当安全的。

二、检测与安装SSH

2.1、查看是否已安装SSH服务

#rpm -qa|grep -E openssh

2.2、安装SSH(如果未安装可执行此步骤)

#yum -y install openssh-server

2.3、SSH服务状态

启动:# systemctl start sshd.service

停止:# systemctl stop sshd.service

重启:# systemctl restart sshd.service

开机启动:# systemctl enable sshd.service

说明:在云服务器 ECS Linux CentOS 7 下重启服务不再通过 service  操作,而是通过 systemctl 操作。

三、启动SSH服务

3.1、注意:

CentOS 7.1安装完后默认已经启动了ssh服务我们可以通过以下命令来查看ssh服务是否启动。

3.2、查看22端口是否开放

#netstat -tnl

3.3、查看ssh服务是否启动

#systemctl status sshd.service

四、SSH客户端连接服务器(口令认证)

4.1、直接连接对方的主机,这样登录服务器的默认用户

# ssh 192.168.207.128

4.2、使用账号登录对方主机ly用户

# ssh ly@192.168.207.128

五、SSH客户端连接服务器(密钥认证)

这种认证方式是比较安全的。

密钥认证步骤:

1、生成公钥和私钥,生成的密钥默认在/root/.ssh/文件夹里面

# ssh-keygen(直接全部回车)

# ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa(非交互式生产密钥)

Enter file in which to save the key (/root/.ssh/id_rsa):   //设置钥匙的名称,默认为id_rsa

Enter passphrase (empty for no passphrase):   //设置保护私钥文件的密码,即密钥登录时的密码(如果设置了密码,去除办法:ssh-keygen -p命令把密码改为空即可)

Enter same passphrase again:  //再次输入保护私钥文件的密码

id_rsa     //创建的私钥

id_rsa.pub  //创建的公钥

2、把生成的公钥发送到对方的主机上去,用ssh-copy-id命令,自动保存在对方主机的~/.ssh/authorized_keys文件中去。

# ssh-copy-id -i /root/.ssh/id_dsa.pub ly@192.168.207.143

3、免密码登入测试

# ssh ly@192.168.207.143

说明:ssh服务端.ssh目录权限为700,.ssh/authorized_keys的权限为600。

SSH服务(一)的更多相关文章

  1. 2016-11-05实战-定义ssh服务的日志

    1.编辑/etc/rsyslog.conf 输入 local 0 .*     /var/log/sshd.log   #日志的保存路径 2.定义ssh服务的日志级别 编辑sshd服务的主配置文件:/ ...

  2. Ubuntu ssh服务安装

    在使用xshell连接ubuntu虚拟机时,提示 Could not connect to '192.168.0.106' (port 22): Connection failed. 在主机使用pin ...

  3. ubuntu开启SSH服务

    SSH分客户端openssh-client和openssh-server 如果你只是想登陆别的机器的SSH只需要安装openssh-client(ubuntu有默认安装,如果没有则sudo apt-g ...

  4. Linux mint 18版本开启SSH服务

    linux mint 18版本默认是没有安装ssh server的 需要手动安装 安装ssh server: 此命令需要联网,会自动下载安装 安装之后看是否开始了ssh, 看到ssh-agent 和s ...

  5. 如何开启ubuntu的SSH服务

    buntu默认并没有安装ssh服务,如果通过ssh链接ubuntu,需要自己手动安装ssh-server,然而SSH分客户端openssh-client和服务端openssh-server,opens ...

  6. 创建支持ssh服务的docker容器和镜像

    http://www.kongxx.info/blog/?p=57 1. 这里使用的centos作为容器,所以首先下载centos的imagessudo docker pull centos 2. 下 ...

  7. kali ssh服务开启登录

    vi /etc/ssh/sshd_config 将#PasswordAuthentication no的注释去掉,并且将NO修改为YES //kali中默认是yes 2. 将PermitRootLog ...

  8. 如何在ubuntu中启用SSH服务

    如何在ubuntu14.04 中启用SSH服务 开篇科普:  SSH 为 Secure Shell 的缩写,由 IETF 的网络工作小组(Network Working Group)所制定:SSH 为 ...

  9. 安装ssh服务

    1.先更新下源 sudo apt-get update 2.安装ssh服务 sudo apt-get openssh-server 3.配置ssh-server,配置文件位于/etc/ssh/sshd ...

  10. 添加或修改ssh服务的端口

    通常ssh远程登录的默认端口是22,这个端口一般是可以更改或者添加的,配置文件位置在:/etc/ssh/sshd_config通过编辑文件可以修改sshd服务的相关配置,以下新增端口2223,即除了2 ...

随机推荐

  1. pyparsing:定制自己的解析器

    在工作中,经常需要解析不同类型的文件,常用的可能就是正则表达式了,简单点的,可能会使用awk.这里要推荐一种比较小众的方式,使用pyparsing来解析文件. pyparsing可以做些什么呢?主要可 ...

  2. office 2013幻灯片中插入SmartArt图形时出现错误下列一个或多个文件由于包含错误而无法运行

    office 2013幻灯片中插入SmartArt图形时出现错误下列一个或多个文件由于包含错误而无法运行 系统:win8 64位 PowerPoint2013 64位 在幻灯片中插入SmartArt图 ...

  3. 把编译安装的httpd 实现服务脚本,通过service和chkconfig 进行管理

    把编译安装的httpd 实现服务脚本,通过service和chkconfig 进行管理 1 编译安装httpd 把httpd编译安装在/app/httpd/目录下. 2 在/etc/rc.d/init ...

  4. Chrome浏览器扩展开发系列之十:桌面通知Notification

    Desktop Notification也称为Web Notification,是在Web页面之外,以弹出桌面对话框的形式通知用户发生了某事件.Web Notification于2015.9.10成为 ...

  5. Spring MVC 基本注解

    1. Spring MVC 常用到的注解: @Controller @RequestMapping @RequestParam @RequestHeader @ModelAttribute @Path ...

  6. C# 中的 ConfigurationManager类引用方法应用程序配置文件App.config的写法

    c#添加了Configuration;后,竟然找不到 ConfigurationManager 这个类,后来才发现:虽然引用了using System.Configuration;这个包,但是还是不行 ...

  7. gulp-rev-append静态资源添加版本号后缀,清理缓存

    大多用的是gulp-rev.gulp-rev-collerctor两个插件,但过程有点麻烦,使用gulp-rev-append插件轻松搞定 github:   https://github.com/b ...

  8. Git操作大全[实际用到的都放在这里总结]

    1.如何合并远程两个分支feature-rebuild和develop? g fetch g checkout -b develop origin/develop g merge feature-re ...

  9. css3 变换 transform(2D)

    一.transform变换 可做拉伸.压缩.旋转.偏移的效果.需加各个浏览器前缀. 二.transform-origin 为transform属性值的基点,默认值为元素的中心位置,即以元素左上角为坐标 ...

  10. 流畅python学习笔记:第十一章:抽象基类

    __getitem__实现可迭代对象.要将一个对象变成一个可迭代的对象,通常都要实现__iter__.但是如果没有__iter__的话,实现了__getitem__也可以实现迭代.我们还是用第一章扑克 ...