Linux 远程登录服务:ssh
  ·SSH是标准的网络协议,可用于大多数UNIX操作系统,能够实现字符界面的远程登录管理,它默认使用22号端口,采用密文的形式在网络中传输数据,相对于通过明文传输的Telnet,具有更高的安全性。
  ·SSH提供了口令和密钥两种用户验证方式,这两者都是通过密文传输数据的。
  ·不同的是,口令用户验证方式传输的是用户的账户名和密码,这要求输入的密码具有足够的复杂度才能具有更高的安全性。
  ·而基于密钥的安全验证必须为用户自己创建一对密钥,并把共有的密钥放在需要访问的服务器上。当需要连接到SSH服务器上时,客户端软件就会向服务器发出请求,请求使用客户端的密钥进行安全验证。服务器收到请求之后,先在该用户的根目录下寻找共有密钥,然后把它和发送过来的公有密钥进行比较。如果两个密钥一致,服务器就用公有的密钥加密“质询”,并把它发送给客户端软件。客户端收到质询之后,就可以用本地的私人密钥解密再把它发送给服务器。这种方式是相当安全的。
  Linux下搭建ssh服务器
  本人实验平台是Fedora14 2.6.35.6
  一、安装ssh
  ssh软件由两部分组成:ssh服务端和ssh客户端。
  ssh的配置文件在/etc/ssh/目录下,其中服务端的配置文件是sshd_config,客户端的配置文件是ssh_config.
  安装ssh,在这里,只讲述通过yum安装的方法(前提是你的yum源配置正确,并且能使用):
  # yum install openssh-* -y
  //yum会自动安装所有openssh相关的软件包
  二、配置ssh服务器
  根据ssh的两种验证方式,配置两种不能安全级别的登录方式。
  ·通过口令验证方式登录
  1.用vim编辑器打开sshd_config配置文件
  # vim /etc/ssh/sshd_config
  2.对配置文件进行如下修改(根据自身实际情况可有所调整):
  Port 22  //默认使用22端口,也可以自行修改为其他端口,但登录时要打上端口号
  #ListenAddress   //指定提供ssh服务的IP,这里我注释掉。
  PermitRootLogin   //禁止以root远程登录
  PasswordAuthentication  yes  //启用口令验证方式
  PermitEmptyPassword   //禁止使用空密码登录
  LoginGraceTime  1m   //重复验证时间为1分钟
  MaxAuthTimes   3    //最大重试验证次数
  保存修改好的配置,退出。
  3.重启sshd服务
  # service sshd restart
  ·通过密钥对验证方式登录
  1.在客户端生成密钥对
  注:生成密钥对前,需切换相应用户身份。例如:当user1需要登录到服务端时,user1必须在客户端生成自己的密钥文件。其他用户也一样。
  # su - user1
  # ssh-keygen -t rsa    //生成密钥文件
  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:
  33:ee:01:7d:c3:74:83:13:ef:67:ee:d7:60:2d:e1:16 root@localhost
  # ll -a .ssh/
  总计 24
  drwxrwxrwx 2 root root 4096 10-08 19:29 .
  drwxr-x--- 21 root root 4096 10-08 19:25
  -rw------- 1 root root 1743 10-08 19:29 id_rsa     //创建的私钥
  -rw-r--r-- 1 root root 396 10-08 19:29 id_rsa.pub  //创建的公钥
  -rw-r--r-- 1 root root 790 2015-11-04 known_hosts
  2.上传公钥文件到服务器或者用U盘拷贝到服务器里
  # scp .ssh/id_rsa.pub user1@192.168.1.100:/home/user1/
  3.在服务器端,将公钥文件添加到相应用户的密钥库里
  # mkdir -p /home/user1/.ssh/       //注意,这里创建的。ssh目录权限必需是除自己外,对其他用户只读,也就是权限位设置为644,所属者与所属者组都是其用户
  # mv /home/user1/id_rsa.pub /home/user1/,ssh/authorized_keys   //由于生成的公钥名称与指定的公钥名称不符,因此需要将生成的文件名换成authorized_keys即可。
  4.修改sshd_config配置文件:
  # vim /etc/ssh/sshd_config
  PasswordAuthentication  no  //禁用口令验证方式,不能把原有的PasswordAuthentication  yes注释掉,注释后,就算没有公钥也能通过口令登录,这样不安全,而且失去了密钥验证的意义。
  RSAAuthentication yes   //启用RSA验证
  PubkeyAuthentication yes  //启用公钥验证
  AuthorizedKeysFile     .ssh/authorized_keys   //启用公钥文件位置,后面的路径是设置公钥存放文件的位置
  保存修改好的配置,退出。
  5.重启sshd服务
  # service sshd restart
  三、登录服务器
  1.Linux客户机
  # ssh 192.168.1.100   //输入服务器IP登录,不加用户名默认以root身份登录
  或者
  # ssh user1@192.168.1.100   //以user1身份登入服务器
  2.windows下使用远程登录客户端登录
  时下最流行的是putty这款登录软件,无需安装,下载下来就可以使用,简单、方便、安全!
  ·当服务器使用口令验证方式时,只需输入用户名和密码即可
  ·当服务器使用密钥验证方式时,需要作以下几步操作:
  1.下载puttygen软件,这个软件用来生成密钥对
  2.打开puttygen,在"生成的密钥类型"栏里点选“SSH-2 RSA”
  3.点击“生成”,软件自动生成密钥
  4.输入密钥密码,点击“保存私钥”。这个私钥是以后作为putty登录所必需加载的密钥信息,慎防丢失
  5.复制公钥信息,在windows下新建记事本进行保存
  6.将保存有公钥信息的记事本文件上传到服务器上,再用vim检查里面的信息是否都排成一行(注意,里面的公钥信息必需是一行,信息必需完整)
  7.将其文件命名为authorized_keys,并拷贝到相应用户家目录下的。ssh/目录里
 

Linux搭建SSH服务器的更多相关文章

  1. Linux 搭建SVN 服务器(转)

    一. SVN 简介 Subversion(SVN) 是一个开源的版本控制系統, 也就是说 Subversion 管理着随时间改变的数据. 这些数据放置在一个中央资料档案库 (repository) 中 ...

  2. Linux 搭建SVN 服务器

    一. SVN 简介 Subversion(SVN) 是一个开源的版本控制系統, 也就是说 Subversion 管理着随时间改变的数据. 这些数据放置在一个中央资料档案库 (repository) 中 ...

  3. 使用Linux搭建FTP服务器实现文件共享

    使用Linux搭建FTP服务器实现文件共享... ---------------- Linux中的文件共享:FTPVSFTPDVSFTPD虚拟用户 FTP可以用在Linux与Linux 和Window ...

  4. 原 Linux搭建SVN 服务器2

    原 Linux搭建SVN 服务器 发表于1年前(2014-08-05 17:55)   阅读(12257) | 评论(3) 31人收藏此文章, 我要收藏 赞3 摘要 Linux搭建SVN 服务器 目录 ...

  5. 原 Linux搭建SVN 服务器

    原 Linux搭建SVN 服务器 发表于1年前(2014-08-05 17:55)   阅读(12257) | 评论(3) 31人收藏此文章, 我要收藏 赞3 摘要 Linux搭建SVN 服务器 目录 ...

  6. Linux搭建SVN 服务器

    Linux搭建SVN 服务器 1          安装SVN 2          使用客户端连接 2.1       使用windows的客户端 2.2       使用Linux下的命令行 3  ...

  7. Linux搭建SVN 服务器(转)

    转自:http://my.oschina.net/lionel45/blog/298305 Linux搭建SVN 服务器 作者: 沈小然    日期:2014年 8月 5日 1          安装 ...

  8. Linux搭建SVN服务器(服务端)

    Linux搭建SVN服务器(服务端) 1 安装SVN SVN客户端:TortoiseSVN,官网下载:https://tortoisesvn.net/downloads.html(客户端) # yum ...

  9. Linux搭建DHCP服务器

    Linux搭建DHCP服务器   实验目标: 通过本实验掌握基于Linux的DHCP服务器搭建技能. 本实验包含内容为yum的认识与使用,磁盘挂载的概念与使用,DHCP原理及配置,systemctl服 ...

随机推荐

  1. xampp 访问出现New XAMPP security concept 或者 新しいXAMPPのセキュリティコンセプト

    出现如下错误: 新しいXAMPPのセキュリティコンセプト: は.要求されたオブジェクトへのアクセスは.ローカルネットワークから入手可能です. この設定は.ファイル"で設定することができますの ...

  2. fcitx中文输入法

    Ubuntu自带的输入法不太尽如人意思,用起来也不方便,我在Ubuntu和FC中都是用Fcitx,很好用! 安装配置如下: 1. 安装 fcitx sudo apt-get install fcitx ...

  3. sql server Case when 的用法

    sql Case 仅仅返回第一个符合条件的值,剩下的Case部分将会被自动忽略. Case 的使用有两种格式:简单Case函数和Case搜索函数. 简单Case 函数: Case sex when ' ...

  4. POJ-3678 Katu Puzzle 2sat

    题目链接:http://poj.org/problem?id=3678 分别对and,or,xor推出相对应的逻辑关系: 逻辑关系 1 0  A and B     A'->A,B'->B ...

  5. tcpclient 类

    1. 构造函数 1) 类对象将套接字与本地系统地址和一个随机的tcp端口号进行绑定. 在默认的tcpclient 对象创建后,必须使用connect方法与远程设备连接. TcpClient tc = ...

  6. 查找无用代码Dead Code的一些心得

    博客搬到了fresky.github.io - Dawei XU,请各位看官挪步.最新的一篇是:查找无用代码Dead Code的一些心得.

  7. Identity-第三章 Authorize原理解析

    本篇旨在解析Identity中角色限制的原理. 需要的工具:Visual Studio.Reflector 问题提出: 1.当我们需要限制某个Controller的名称只需要某个或者某几个角色访问,这 ...

  8. 超详细单机版搭建hadoop环境图文解析

    前言: 年前,在老大的号召下,我们纠集了一帮人搞起了hadoop,并为其取了个响亮的口号“云在手,跟我走”.大家几乎从零开始,中途不知遇到多少问题,但终 于在回家之前搭起了一个拥有12台服务器的集群, ...

  9. 通达OA 小飞鱼工作流在线培训教程文件夹及意见征集

    最近通达OA技术交流群有不少朋友反映说表单设计这块 改动样式的问题,这块须要html和css的改动.本来最近正好要在工作流这块准备做一个系列的课程,都是基础的设置主要是给刚接触工作流的朋友用的,大家有 ...

  10. Linux vmstat具体解释(系统IO)

    1. vmstat 能够展现给定时间间隔的server的状态值,包含server的CPU使用率,内存使用,虚拟内存交换情况,IO读写情况 vmstat 2 10 2: 每隔2s 10 : 统计10次 ...