基本概念 
 linux自带的ssh为OpenSSH

ssh协议提供两种用户认证方式 
  1、 基于口令的安全认证:使用用户名、密码的方式对登录用户进行认证

  2、 基于密钥的安全认证:使用公钥和私钥对的方式对登录用户进行认证

OpenSSH的rpm包由四部分组成(默认已安装) 
  openssh-4.3p2-26.el5.i386.rpm(一定要先安装这个rpm包)

  openssh-server-4.3p2-26.el5.i386.rpm

  openssh-clients-4.3p2-26.el5.i386.rpm 
  openssh-askpass-4.3p2-26.el5.i386.rpm (在图形界面下使用ssh服务时才需要)

openssh的主配置文件为: 
  /etc/ssh/sshd_config  #ssh服务器的配置文件

  /etc/ssh/ssh_config  #ssh客户端的配置文件

openssh支持使用scp(加密的拷贝)和sftp(加密的ftp)等客户端程序进行远程主机
的文件复制

OpenSSH服务器端配置实例1:基于用户名密码的登录方式 
1、vi /etc/ssh/sshd_config (以下列出的是常用配置)

#Port 22  #定义ssh监听的端口号,默认为22 
#Protocol 2,1 #设置使用ssh协议的顺序,先使用ssh2,如果不成功再使用ssh

Protocol 2  #设置只使用ssh2协议 
#ListenAddress 0.0.0.0  #设置ssh服务器绑定的ip地址,默认为所有可用的ip地址

#PermitRootLogin yes #设置是否允许root登录,默认允许 
#PermitEmptyPasswords no #设置是否允许空密码的客户登录,默认为禁止 
PasswordAuthentication yes #设置是否使用口令认证方式,如果要使用公钥认证方式,可将其设置为no

2、重启ssh服务

   /etc/init.d/sshd restart 
3、如果启用了iptables,则需要添加如下语句来开放ssh

   iptables –I INPUT –p tcp –dport 22 –j ACCEPT

     iptables –I OUTPUT –p tcp –sport 22 –j ACCEPT   
3、windows客户端登录

  使用xshell、putty、securecrt等客户端软件都可以登录

4、linux客户端登录

  1、安装openssh-clients (默认已安装)

  2、ssh命令的基本使用

    ssh username@sshserver

      ssh –l username sshserver

OpenSSH服务器端配置实例2:基于公钥认证的ssh登录 
1、 获取puttygen程序 
可以使用puttygen程序来生成密钥对,下载地址为
http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html  
2、 产生密钥 
 
      

3、 保存密钥

4、 传输公钥文件到ssh服务器 
  公钥文件是可以公开给所有用户的,无需考虑安全问题,可以使用ftp、u盘都可以

5、 转换公钥文件格式 
  由于puttygen产生的公钥文件格式与openssh的格式不兼容,因此还要在linux中使用openssh自带的ssh-keygen对其进行转换,openssh存放公钥的目录默认为/root/.ssh,如果没有这个目录,可以手工创建

  [root@server ~]# mkdir .ssh 
  [root@server ~]# ssh-keygen -i -f wtcentoskey.pub > /root/.ssh/authorized_keys  
如果有多个公钥需要添加,可使用下面的命令将公钥文件追加到authorized_keys中

[root@server ~]# ssh-keygen -i -f abcxyz.pub >> /root/.ssh/authorized_keys

6、 在ssh服务器上启用公钥认证 
[root@server ~]# vi /etc/ssh/sshd_config 
 
7、 重启sshd服务 
  [root@server ~]# /etc/init.d/sshd restart

8、 客户端用putty来登录ssh服务器 
 

Putty成功的连接到ssh服务器后会出现如下的界面 
 
 
附:如果使用xshell则更加简单,因为xshell生成的密钥对和openssh是完全兼容的,无需转换,只需要将公钥文件追加到/root/.ssh/authorized_keys中即可,如下: cat /root/wtxshell.pub >> /root/.ssh/authorized_keys

centos SSH配置详解的更多相关文章

  1. ssh配置详解及公私钥批量分发

    第一:ssh配置文件详解 第二:ssh公私密钥的生成 第三:ssh公钥分发之一:ssh自带工具ssh-copy-id工具分发 第四:ssh公钥分发之二:编写sshpass脚本批量分发 第五:ssh公钥 ...

  2. CentOS网络配置详解

    转载于CentOS中文站:http://www.centoscn.com/CentOS/2015/0507/5376.html一.配置文件详解 在RHEL或者CentOS等Redhat系的Linux系 ...

  3. VPS服务器下的centos网卡配置详解……

    自动激活网卡 安装了CENTOS 6.X后,每次启动了系统都需要手动激话网卡,以下方法可以在系统启动后自动激活网卡. cat /etc/sysconfig/network-scripts/ifcfg- ...

  4. CentOS Apache配置详解

    要想在linux上实现网页服务器(www)需要Apache这个服务器软件,不过Apache仅能提供最基本的静态网站数据而已,想要实现动态网站的话,最好还是要PHP与MySQL的支持,所以下面我们将会以 ...

  5. 基于 CentOS Mysql 安装与主从同步配置详解

    CentOS Mysql 安装 Mysql (Master/Slave) 主从同步 1.为什么要使用主从同步 1.如果主服务器出现问题,可以快速切换到从服务器提供的服务 2.可以在从服务器上执行查询操 ...

  6. CentOS6.5下VNC Server远程桌面配置详解

    参考文献: (总结)CentOS Linux下VNC Server远程桌面配置详解 远程桌面连接工具VNC——license Key 我的下载地址为 太平洋下载 VNC连接黑屏的问题 centos 6 ...

  7. 【转】SSH服务详解

    [转]SSH服务详解 第1章 SSH服务 1.1 SSH服务协议说明 SSH 是 Secure Shell Protocol 的简写,由 IETF 网络工作小组(Network Working Gro ...

  8. (转)SSH服务详解

    SSH服务详解 原文:http://www.cnblogs.com/clsn/p/7711494.html 第1章 SSH服务1.1 SSH服务协议说明SSH 是 Secure Shell Proto ...

  9. Linux NFS服务器的安装与配置详解

    一.NFS服务简介 NFS是Network File System(网络文件系统).主要功能是通过网络让不同的服务器之间可以共享文件或者目录.NFS客户端一般是应用服务器(比如web,负载均衡等),可 ...

随机推荐

  1. 使用netbeans 搭建 JSF+SPRING 框架

    spring版本使用4,jsf版本2.2 jsf的配置文件faces-config.xml <?xml version='1.0' encoding='UTF-8'?> <faces ...

  2. Java编程思想读书笔记--第14章类型信息

    7.动态代理 代理是基本的设计模式之一,它是你为了提供额外的或不同的操作,而插入的用来代替“实际”对象的对象.这些操作通常涉及与“实际”对象的通信,因此代理通常充当着中间人的角色. 什么是代理模式? ...

  3. SQL 不同的数据类型

    SQL 不同的数据类型 1.SQL TEXT 2.SQL VARCHAR(SIZE) VARCHAR(X) Case: user name, email, country, subject, pass ...

  4. Codevs 2611 观光旅游(floyed最小环)

    2611 观光旅游 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 钻石 Diamond 题目描述 Description 某旅游区里面有N个景点.两个景点之间可能直接有道路相连,用 ...

  5. 2015/7/6 (!长期更新!)C语言从零——张呵呵

    随即呈上! By    He_He _S 小组 @成都七中高新OI2015

  6. C++(指针)

    指针在编程中有时很重要的作用 我们可以用它完成一些看似不可能完成的任务 #include<iostream>using namespace std;void square(int *n){ ...

  7. java 中hashcode和equals 总结

    一.概述            在Java中hashCode的实现总是伴随着equals,他们是紧密配合的,你要是自己设计了其中一个,就要设计另外一个.当然在多数情况下,这两个方法是不用我们考虑的,直 ...

  8. ExecutorService 接口

    先看一个Executor接口,该接口只有一个方法:void execute(Runnable command),用于在未来某个时刻提交一个command,这个command可以被提交到一个新的线程,或 ...

  9. Chrome 建立SOCKS5代理

    前提是putty已经在7090端口和远程服务器建立隧道. 假设你的chrome浏览器位于"C:\Program Files (x86)\Google\Chrome\Application\c ...

  10. Python3 多进程和多线程

    Unix/Linux操作系统提供了一个fork()系统调用,它非常特殊.普通的函数调用,调用一次,返回一次,但是fork()调用一次,返回两次,因为操作系统自动把当前进程(称为父进程)复制了一份(称为 ...