一)sshd服务 task任务 1)配置文件在哪里 /etc/ssh/sshd_config #理解配置项 2)修改端口,增加一个监听端口 3)使用密钥登陆。(生成一对密钥,安装公钥到远程机器上) 免密登陆 | 密钥登陆 | 建立信任关系 3.1)生成“一对”密钥。 公钥(锁) public key #可以公共 私钥(钥匙) private key #不能公开 ssh-keygen -t rsa #-t type rsa # gen generate生成 [root@mydnsserver ~]# ls -l .ssh/ 总用量 12 -rw------- 1 root root 1675 9月 23 14:40 id_rsa #私钥 600权限 重要 -rw-r--r-- 1 root root 398 9月 23 14:40 id_rsa.pub #公钥 644权限 -rw-r--r-- 1 root root 177 9月 11 11:45 known_hosts #已知主机,远程机器的ip和指纹存在这个文件。 -rw------- 1 root root 398 9月 23 14:46 authorized_keys #公钥安装在这里 注意 600权限。 指纹: ssh登陆的时候,远程机器的指纹。 比如清空 > .ssh/known_hosts 文件。 声音:声纹。 浏览器指纹。 可以免去打yes ssh -o StrictHostKeyChecking=no root@192.168.139.135 3.2) 如何实现密钥登陆。 ssh-copy-id -i ~/.ssh/id_rsa root@192.168.139.135 #把公钥/锁 安装在远程主机192.168.139.135上。 3.3) 3.2步骤的替代做法,手动做法。 本机我们叫HOSTA ,远程机器我们叫HOSTB 在HOSTA 生成一对密钥。 然后 公钥/锁 文件 ~/.ssh/id_rsa.pub 的内容。先传送到 HOSTB 登陆HOSTB, cat id_rsa.pub >> ~/.ssh/authorized_keys ## 重要 确保权限是 600 chmod 600 ~/.ssh/authorized_keys 4) sshd服务 主配置文件 /etc/ssh/sshd_config #扩展阅读 Kerberos , single sign on / SSO 单点登陆系统, LDAP http:// 80 + openssl https:// 443商品 ftp:// 21/20 + openssl sftp:// 22 5) sftp scp 因为之前配置了免密登陆,所以sftp和scp 的时候,不需要输入密码。 cp source destination cp src dest/dst cp 源 目的 网络访问相似 socket四要素 source-ip:source-port ===> dest-ip:dest-port xshell/mobaxter 110.254 ===> 192.168.139.123:22 (sshd) scp [选项] src dest scp -r src dest scp -r /etc/yum.repos.d 192.168.139.135:/tmp ## 从本地scp到远程 scp -r 192.168.139.135:~/hostb-dir01 /tmp/test # 从远程 scp到本地。 6) tcp wrappers 控制 #少用 7) 生成一对密钥。 密钥 有二种格式,可以互相转换。 一种openssh这种。 #一般是使用这种。 还有一种是putty生成的密钥对 。