SSH的简介

传统的远程登陆程序的工具,比如TELNET、Rlogin以及Rsh等,都是将口令在网上明文的方式传输的。显然这不能保证系统和用户的安全和利益。SSH(Secure Shell)则避免了上述问题,它建立在应用层和传输层的安全协议基础上。采用通信加密的方式来一定程度上保证数据的安全。

SSH主要使用开源软件为OpenSSH。的在Fedora中安装和配置OpenSSH也及其方便。

OpenSSH的安装

1) 安装openssh-server
[root@localhost ~]# yum install openssh-server

2) 查看是否已成功安装openssh-server

[root@localhost ~]# rpm -qa | grep openssh-server
openssh-server-5.3p1-19.fc12.i686

3)启动SSH服务

[root@localhost ~]# /etc/rc.d/init.d/sshd start
Stopping sshd: [ OK ]
Starting sshd: [ OK ]

如果是重新启动和关闭,则分别用
[root@localhost ~]# /etc/rc.d/init.d/sshd restart
[root@localhost ~]# /etc/rc.d/init.d/sshd stop

4) 如果防火墙服务有开启, 则需要允许TCP协议的22端口通信.
[root@localhost ~]# iptables -I INPUT -p tcp --dport 22 -j ACCEPT

5) 到这里所有工作都完成了, 可以尝试从客户端SSH登陆Fedora. 比如可以使用putty登录。另外linux下也有OpenSSH客服端,名为OpenSSH-clients直接安装使用,见下节。

6) 如果想让ssh服务开机就运行, 需要使用# ntsysv命令打开开机服务选项卡. 选中sshd后按”OK”.
[root@localhost ~]# ntsysv

7)如果想配置ssh服务的运行参数, 是通过修改配置文件/etc/ssh/ssh_config实现的.如果没什么特殊的要求这都不用配置. /etc/ssh/ssh_config文件的配置选项非常多, 但大部分都已经用”#”注释掉了.配置完记得保存配置文件.

使用OpenSSH客户端

 Fedora 默认已安装了OpenSSH的客户端OpenSSH-clients, 客户端和服务器连接时,可以使用两种验证方式:基于口令的验证方式和基于密匙的验证方式!

1、基于口令的验证方式
  这种验证方式要求用户输入用户名称和密码!若没有指定用户名称和密码,则默认使用当前在客户机上的用户名!

  例1:直接登陆
  [root@localhost ~]#ssh 210.34.48.52
  则登陆用户名为客户机当前用户名!
  例2:指定用户名登陆
  [root@localhost ~]#ssh fzu@210.34.48.52
   [root@localhost ~]#ssh –l fzu 210.34.48.52

  上面过程结束后,系统将会提示你输入用户名和密码!
  
2、基于密匙的验证方式
  使用密匙的验证方式,用户先需要为自己创建一对密匙:公匙和私匙。(公匙用在要登陆的服务器上)
  OpenSSH公开密匙的密码体制有RSA、DSA!
  创建密匙,比如:
   [root@localhost ~]#ssh-keygen –t rsa
  回车后,要求输入使用密匙时的口令!这样便生成了公匙和私匙:放在用户主目录下的.ssh目录下,文件名:id_rsa.pub和id_rsa!必须将公匙复制到登陆的服务器的~/.ssh/目录下,并改名为:authorized_keys!然后,便可使用密匙方式登陆!
   [root@localhost ~]#ssh [–l username] ip地址或主机名

 三、OpenSSH上常用的命令

1、本地系统和远程系统间文件的传输
  #scp a.txt root@210.45.160.17:/b.txt
  #scp root@210.45.160.17:/b.txt /c.txt

  2、sftp命令
  Sftp 命令和ftp命令类似,它是OpenSSH提供的网络传输文件的小工具,它更加安全,使用和ftp相似的命令:主要有如下几个:
  1)、登陆
  #ftp 210.45.160.17
  2)、ftp 会话的打开与关闭
  打开:open 210.45.160.27
  关闭:close
  3)、文件的传输
  从ftp服务器上得到文件:
  Get a.txt
  向ftp上放文件
  Put a.txt
  4)、退出ftp
  Bye
  5)、其他
  bell:每个命令执行完毕后计算机响铃一次
  Cd ,ls 等一些常见命令也可以在ftp服务器目录中使用!