Xshell是Xmanager工具箱中的一个重要组件, 在服务器管理上, 有着非常强大的功能. 其中的文件传输, 可以快速打开Xftp传输, 实现Windows <–> Linux的文件交互.
另外, Xshell支持lrzsz, 可以通过sz和rz命令, 非常便捷的实现文件传输.
密钥登录是保证服务器用户密码安全的重要手段, Xshell有着完整的秘钥验证和注册体系, 下面进行介绍.
[1] 搭建环境: CentOS, Selinux服务关闭, iptables规则清空.
# getenforce
如果得到的结果是Enforcing, 则要配置成为disabled, 并重启服务器:
# vim /etc/selinux/config
SELINUX=enforcing --> SELINUX=disabled
# init 6
清空iptables:
# iptables -F && service iptables save
[2] 创建目录和密钥文件: root用户和普通用户
# mkdir ~/.ssh
# chmod 700 ~/.ssh
# touch ~/.ssh/authorized_keys
# chmod 600 ~/.ssh/authorized_keys
注意: .ssh是目录, 因此必须有执行权限; 而authorized_keys是文件, 实际上只有读的权限就可以了.
另外, 如果是root用户给普通用户创建这个目录和文件的时候, 权限应该是:
# chmod 701 ~/.ssh //普通用户至少有执行权限
# chmod 604 ~/.ssh/authorized_keys //普通用户至少有读权限
[3] 创建公钥和私钥:
打开创建密钥工具:
下一步:
下一步:
设定密钥的名称和密码:
复制生成的字符串, 并保存文件到本地文件夹(Windows).
[4] 将复制的字符串, 写入~/.ssh/authorized_keys
# vim ~/.ssh/authorized_keys //粘贴
[5] 修改sshd配置并重启
# vim /etc/ssh/sshd_config //打开下面三项的注释
# RSAAuthentication yes //打开RSA密钥验证, 实际上打开PubkeyAuthentication就可以了, 这一项可有可无.
# PubkeyAuthentication yes //打开公钥验证
# AuthorizedKeysFile .ssh/authorized_keys //指定默认的公钥路径为~/.ssh/authorized_keys
PasswordAuthentication yes --> no //关闭密码直接登录, 不然密钥登录就没有意义了.
# service sshd restart