安装OpenSSH Server
首先,我们搜索一下CentOS的软件库里面有没有已经定义好的SSH服务器包:
$ yum search ssh ... ... openssh.x86_64 : An open source implementation of SSH protocol versions 1 and 2 openssh-askpass.x86_64 : A passphrase dialog for OpenSSH and X openssh-clients.x86_64 : An open source SSH client applications openssh-ldap.x86_64 : A LDAP support for open source SSH server daemon openssh-server.x86_64 : An open source SSH server daemon ... ...
OpenSSH是Secure Shell的一个开源实现。从上面的搜索结果可以看到,CentOS的软件库里面已经有了OpenSSH的服务器包(openssh-server)和客户端包(openssh-clients),用yum install可以直接安装。
$ yum install openssh-server
OpenSSH Server安装完成后在/etc/init.d目录下应该会增加一个名为sshd的服务。可以参考《CentOS设置服务开机自动启动》的方式配置sshd服务开机自动启动。
$ chkconfig --list sshd sshd 0:off 1:off 2:on 3:on 4:on 5:on 6:off
手动启动sshd服务,方便后面客户端的连接:
$ /etc/init.d/sshd start
用密码方式登录远程服务器
WIndows 7里面的SSH客户端软件我用的是XShell。打开XShell,新建连接,选择Password验证方式,输入用户名和密码,这样就可以连接到服务器了。
登录成功后的画面:
用RSA密钥登录远程服务器
OpenSSH允许使用RSA的方式登录服务器。RSA加密方式会有两个文件:一个是公钥文件,放在服务器$HOME/.ssh/authorized_keys文件里面;另外一个是私钥文件,放在客户端电脑上。
产生RSA密钥对,可以在服务器产生,也可以在客户端产生:
$ ssh-keygen
执行完毕后,会在$HOME/.ssh目录下多出来两个文件:id_rsa.pub(公钥文件)和id_rsa(私钥文件)。
将公钥文件追加到$HOME/.ssh/authorized_keys文件后面:
$ cat id_rsa.pub >> authorized_keys
将私钥文件下载到客户端电脑(可以使用SFTP方式,例如XFtp,WinSCP等很多软件),然后新建XShell连接,选择Public Key验证方式:
配置完毕,现在我们可以不用输入密码也能够连接到服务器了。
OpenSSH相关目录和文件
所有配置信息保存的目录:/etc/ssh
sshd服务配置文件:/etc/ssh/sshd_config
OpenSSH相关链接
《用OpenSSH构建SSH服务器》:安装O盆SSH服务器。
《用SSH客户端软件登录到服务器》:如何用PUTTY+RSA登陆远程服务器。
《CentOS Wiki - 保卫 OpenSSH》:OpenSSH的安全设置。
《Top 20 OpenSSH Server Best Security Practices》:20个需要遵守的SSH安全建议。