《ssh登陆服务器.ppt》由会员分享,可在线阅读,更多相关《ssh登陆服务器.ppt(26页珍藏版)》请在优知文库上搜索。
1、SSH(Secure SHell),实现了与Telnet服务类似的远程登录功能SSH协议在网络中使用密文传输数据SSH服务器中还支持使用scp和sftp等客户端程序进行远程主机的文件复制SSH协议提供两种用户认证方式基于口令的安全认证 与telnet类似,提供正确的用户口令后可以登录远程服务器基于密钥的安全认证 使用公钥和私钥对的方式对用户进行认证SSH服务中使用密钥进行用户认证每个用户都需要每个用户都需要生成自己的公钥生成自己的公钥和私钥对文件和私钥对文件用户的公钥文件用户的公钥文件需要保存在需要保存在SSH服务器主机中服务器主机中用户私钥文件保用户私钥文件保存在存在SSH客户端客户端主机中
2、主机中OpenSSH是著名的开源软件项目 OpenSSH是SSH协议的免费实现版本 OpenSSH可应用于大多数UNIX系统绝大多数Linux发行版本都采用OpenSSH作为SSH服务器RHEL4系统中OpenSSH服务器和客户端软件是默认安装的 openssh软件包是实现ssh功能的公共软件包openssh-server软件包实现了SSH服务器的功能openssh-clients软件包中包含了SSH服务的客户端程序openssh-askpass和openssh-askpass-gnome只有在Linux的图形界面下使用SSH服务时才需要 OpenSSH的服务程序名称是sshdsshd服务程序
3、的启动脚本/etc/init.d/sshdsshd服务程序缺省状态为自动启动sshd服务的启动与停止 启动服务程序service sshd start 停止服务程序service sshd stop配置目录OpenSSH服务器和客户机的所有配置文件都保存在同一目录中/etc/ssh/ 服务器配置文件SSH服务器的配置文件是sshd_config/etc/ssh/sshd_config 客户机配置文件SSH客户程序的配置文件是ssh_config/etc/ssh/ssh_config 使用ssh命令登录SSH服务器# ssh root192.168.1.2 首次登录SSH服务器为了建立加密的SS
4、H连接需要用户在客户端确认服务器发来的RSA密钥 (输入yes)用户认证每次登录SSH服务器都需要输入正确的用户口令SSH登录使用的是SSH服务器主机中的用户帐号“.ssh”目录在SSH客户主机的用户宿主目录中,使用名为“.ssh”的目录保存用户的SSH客户端信息/.ssh/ “.ssh”目录在用户首次进行SSH登录后自动建立“known_hosts”文件“known_hosts”文件位于“.ssh”目录中“known_hosts”文件用于保存当前用户所有登录过的SSH服务器的RSA密钥 设置密钥认证的一般步骤1. 在SSH客户端生成用户的公钥和私钥对文件2. 将SSH客户的公钥添加到SSH服
5、务器中用户的认证文件中 3. 验证密钥的认证 在SSH客户端生成用户的公钥和私钥对 使用ssh-keygen命令生成密钥对$ ssh-keygen -t rsa 公钥和私钥文件ssh-keygen命令将在“.ssh”目录中生成公钥和私钥文件id_rsa是私钥文件,内容需要严格保密id_rsa.pub是公钥文件,可发布到SSH服务器中 复制公钥文件 将客户端中的用户公钥文件复制到SSH服务器中 公钥文件的复制可使用软盘、U盘或网络 将公钥内容追加到authorized_keys 文件 authorized_keys 文件保存在SSH服务器中用户目录的“.ssh”子目录中 authorized_k
6、eys用于保存所有允许以当前用户身份登录的SSH客户端用户的公钥内容 使用“”重定向符将用户公钥追加到authorized_keys文件中cat id_rsa.pub /.ssh/authorized_keys 基于密钥的用户认证过程用户使用ssh命令登录SSH服务器时,将使用客户机中的私钥与服务器中的公钥进行认证,认证成功后将允许用户登录密钥的认证过程是ssh命令与SSH服务器自动完成的用户登录过程中将不再提示输入用户口令为了提高Linux服务器的安全性,可以禁止root用户进行SSH登录设置sshd_config文件# vi /etc/ssh/sshd_config /添加设置行添加设置行
7、PermitRootLogin no 重新启动sshd服务程序# service sshd restart 再次登录SSH服务器时将不能使用root帐号进行登录ssh命令的两种格式 格式1:ssh usernamesshserver 格式2:ssh -l username sshserver 两种命令格式具有相同的功能 ssh命令中需指定登录的用户名和SSH服务器地址不指定用户名的ssh命令ssh命令中如果不指定用户名,将使用SSH客户机中当前用户的名字登录SSH服务器# ssh 192.168.1.2运行服务器中的图形程序是SSH的重要应用ssh命令需要在图形界面虚拟终端下运行 命令格式:s
8、sh -X usernamesshserver xlock是运行在是运行在SSH服务器中,而显示服务器中,而显示在在SSH客户机中的客户机中的窗口程序窗口程序 SSH服务器对sftp的支持 sftp是SSH服务器中的子系统 在SSH服务器中需要存在对sftp的配置# grep sftp /etc/ssh/sshd_configSubsystem sftp /usr/libexec/openssh/sftp-server sftp命令的使用 sftp登录命令的格式与ssh命令类似:sftp usernamesshserver sftp命令实现了类似ftp命令的功能和命令交互界面 scp命令可以实
9、现SSH服务器与客户机之间的文件复制 scp命令的格式类似于cp命令 SSH服务器可以作为scp命令中的源文件或目标文件 命令实例 将SSH服务器中的文件复制到客户机# scp root192.168.1.2:/etc/passwd . 将客户机中的文件复制到SSH服务器# scp test mike192.168.1.2: PuTTYPuTTY是Windows环境中可以免费使用的ssh客户端软件http:/www.chiark.greenend.org.uk/sgtatham/putty/ WinSCPWinSCP是知名的开源软件项目WinSCP在Windows环境中提供了窗口形式的sftp
10、和scp客户端操作环境SSH协议是telnet协议的安全替代品SSH服务可以采用帐号和密钥两种用户认证方式在RHEL4系统中OpenSSH服务器和客户软件缺省安装SSH的服务器配置文件sshd_config和客户机配置文件ssh_config都保存在“/etc/ssh”目录中SSH客户软件中包括的ssh命令用于远程管理,sftp和scp命令用于远程文件复制查看OpenSSH服务器的配置文件“/etc/ssh/sshd_config”中对服务器的缺省配置内容使用ssh命令登录SSH服务器主机网络安全管理网络安全管理SSH远程登录远程登录服务服务 SSH的起源与原理的起源与原理OpenSSH的基本
11、配置管理的基本配置管理OpenSSH的基本应用的基本应用在在Windows下使用下使用SSH客客户端软件户端软件TCPD的概念的概念hosts.deny和和hosts.allow设置文件设置文件 TCP WrappersTCP Wrappers配置实例配置实例TCP Wrappers可用于可用于对其他网络服务程序进对其他网络服务程序进行访问控制行访问控制hosts.deny和和hosts.allow文件文件用于保存用于保存TCP Wrappers的访问控制策略的访问控制策略TCP Wrappers可以方可以方便的对指定的服务程序便的对指定的服务程序实施基于主机地址的访实施基于主机地址的访问控制
12、问控制SSH是是telnet服务的安全服务的安全替代品替代品OpenSSH可以在大多数可以在大多数UNIX系统中作为系统中作为SSH服服务器务器SSH客户端程序包括客户端程序包括ssh、sftp和和scp,用于实现,用于实现远程管理和远程文件复远程管理和远程文件复制制Windows环境中可以使环境中可以使用用PuTTY和和WinSCP作作为为SSH客户端客户端任务1:SSH服务管理任务2:配置TCP Wrappers的访问控制注意事项提示1:为了区分SSH服务器和客户机的不同角色,需要使用两台Linux主机分别作为SSH服务器和客户机提示2:使用ssh命令进行远程登录时,需要指定登录用户的名称,否则会以当前用户名进行登录注意事项提示1:为了能够清晰的验证TCP Wrappers的访问控制功能,实验中可以先关闭iptables防火墙提示2:hosts.allow和hosts.deny中保存的访问控制记录是即时生效的,不需要重新启动任何服务