SSH概述
传统的远程登录(telnet,rlogin)是不安全的,它们在网络上用明文传输口令和数据,SSH则是安全的。OpenSSH提供两种级别的验证方式:
- 基于口令的安全验证:知道服务器的帐号密码即可远程登录,口令和数据在传输过程中都会被加密。
- 基于密钥的安全验证:此时需要在创建一对密钥,把公有密钥放到远程服务器上自己的宿主目录中,而私有密钥则由自己保存。
Ubuntu服务端配置SSH
1. 软件安装
检查软件是否安装:
$sudo apt-cache policy openssh-client openssh-server
安装软件:
$sudo apt-get install openssh-server //服务端
$sudo apt-get install openssh-client //客户端(ubuntu10.10以安装)
该软件包中还携带了一些其他的SSH工具,如ssh-keygen用来生成私钥/公钥对,scp可以通过ssh远程复制文件,stfp可以实现ftp传输文件。
2. 配置文件
$/etc/ssh$ ls -l
total 148
-rw-r--r-- 1 root root 125749 2010-09-15 02:34
moduli //ssh服务器的Diffie-Helllman密钥文件
-rw-r--r-- 1 root root 1669 2010-09-15 02:34
ssh_config //ssh客户端配置文件
-rw-r--r-- 1 root root 2453 2011-03-09 14:09
sshd_config //ssh服务器端配置文件
-rw------- 1 root root 672 2011-03-09 14:09
ssh_host_dsa_key //ssh服务器端dsa算法私钥
-rw-r--r-- 1 root root 613 2011-03-09 14:09
ssh_host_dsa_key.pub //ssh服务器dsa公钥
-rw------- 1 root root 1675 2011-03-09 14:09
ssh_host_rsa_key //ssh服务器rsa算法私钥
-rw-r--r-- 1 root root 405 2011-03-09 14:09
ssh_host_rsa_key.pub /ssh服务器rsa算法公钥
根据需要修改、确认
sshd_config配置文件:
- 启用RSA加密方式:RSAAuthentication yes
- 启用公钥配对认证方式:PubkeyAuthentication yes
- 设置公匙文件路径:AuthorizedKeysFile %h/.ssh/<authorized_keys>
- (选择性)密码登陆方式:PasswordAuthentication <yes | no> #禁止密码验证登录,如果启用的话,OpenSSH的 RSA认证登录就失去意义
- (选择性)root远程登录:PermitRootLogin <yes | no>
4. 获取需要登录到此服务器的