SSH免密码登录失败深究

被SSH免密码登录失败的问题困扰了很久,也查了很多资料,一直没能解决,最近研究ssh-copy-id脚本源码,发现了根源所在。说深究实在有点夸大,鄙人能力低微,在此就标题问题致歉。 ######环境: >客户端:Mac >服务器:CentOS6.8—-ip:192.168.0.32 先说一般的使用方式 1. 拷贝 ~/.ssh 目录里的公钥到服务器 scp ~/.ssh/id_rsa.pub root@192.168.0.32:~ 2. 登录服务器,创建 ~/.ssh/authorized_keys 文件 ssh root@192.168.0.32 mkdir .ssh cat id_rsa.pub >> ~/.ssh/authorized_keys rm -rf id_rsa.pub logout 正常情况,按理说就可以免密码登录了,但试了下,还是需要密码 根据搜索引擎得来的资料,总结原因在于SELinux限制,解决办法如下: > ** 服务器端设置 .ssh 及 authorized_keys 权限 ** > chmod 700 .ssh/ chmod 600 authorized_keys 我试了下,问题还是没有解决,不能免密码登录 研究 ssh-copy-id 源码,发现了这段代码: > ssh_copy_id > Assuming that the remote host treats ~/.ssh/authorized_keys as one might expect populate_new_ids 0 [ “$DRY_RUN” ] || printf ‘%s\n’ “$NEW_IDS” | ssh “$@” “ umask 077 ; mkdir -p .
Read more →

Java Web路径跳转

最近在学java web,感觉对于路径跳转这部分很容易混淆,所以专门实践测试了下,对此做个总结。 ####先把结论写在这里: 1. 根目录(/) >* web.xml 文件中 “/” 代表项目根目录 * 页面中链接的 “/” 代表服务器根目录 * 请求重定向的 “/” 代表服务器根目录 * 请求转发的 “/” 代表项目根目录 2. 当前目录 >* Servlet 请求重定向和转发的地址中当前路径为 web.xml 文件设置的 Servlet 映射路径 Filter (过滤器)请求重定向和转发的地址中当前路径为所匹配的过滤页面的路径 #####web.xml中”/“代表项目根目录: >web.xml <web-app ...> ... <servlet-mapping> <servlet-name>ServletOne</servlet-name> <url-pattern>/servlet/ServletOne</url-pattern> </servlet-mapping> ... </web-app> 其中 < url-pattern > 标签中的第一个”/“即代表项目根目录,也设定了 servlet 对于项目的映射地址。 项目以WebRoot目录为根目录,假如根目录下有 index.jsp 页面,在该页面中 < a > 和 < form > 标签链接地址的当前目录即为根目录下,若要访问 ServletOne 则链接地址可以写为 ”.
Read more →