Linux - solr-7.7.0 设置登录密码

写在前面

可能很多人在用solr的时候,都不会设置密码,因为,solr搭建完成后,控制台默认是没有密码设置的。这样,用着很方便,那为什么要做solr控制台的密码登录?首先,是为了数据的安全,因为,一旦只要别人知道了你的ip,就能直接去控制台,对你的数据进行操作;其次,就是防止黑客通过solr黑了你的服务器,血的教训,当你碰上了,就知道有多操蛋了,而且,网上就有怎么通过solr漏洞,攻击别人的服务器的教程。所以,防患未然,早做早安心!否则,亡羊补牢,就为之晚矣了!


一、在solr的WEB配置文件,设置,开启登录配置

文件路径:/fitness/serve/solr-7.7.0/server/solr-webapp/webapp/WEB-INF/web.xml

新增内容:
<!-- 设置密码·B -->
<security-constraint>
	<web-resource-collection>
		<web-resource-name>Solr Add Lock</web-resource-name>
		<url-pattern>/</url-pattern>
	</web-resource-collection>
	<auth-constraint>
		<role-name>admin</role-name>
	</auth-constraint>
</security-constraint>

<login-config>
	<auth-method>BASIC</auth-method>
	<realm-name>Solr Admin</realm-name>
</login-config>
<!-- 设置密码·E -->
位置:加到</web-app>这个标签里。

二、创建一个用来存储密码的文件 password.properties

文件路径:
/fitness/serve/solr-7.7.0/server/etc

创建文件:
vim password.properties
添加内容:
#userName:password,role

admin:MD5:9b962829040b12d3c46f4010c2b11448,admin 【md5加密登录设置定义】
或
admin:sdfeduj887sdd,admin【明文密码登录设置定义】

三、设置登录服务,引入密码配置文件

文件路径:/fitness/serve/solr-7.7.0/server/contexts/solr-jetty-context.xml

安全配置:
<Get name="securityHandler">
       <Set name="loginService">
                 <New class="org.eclipse.jetty.security.HashLoginService">
                         <Set name="name">加载密码配置文件</Set>
              <!-- 引入密码文件 -->
                        <Set name="config">
                            <SystemProperty name="jetty.home" default="."/>
                            /etc/real.properties
                        </Set>
                 </New>
       </Set>
</Get>
完整内容:
<?xml version="1.0"?>
<!DOCTYPE Configure PUBLIC "-//Jetty//Configure//EN" "http://www.eclipse.org/jetty/configure_9_0.dtd">
<Configure class="org.eclipse.jetty.webapp.WebAppContext">
  <Set name="contextPath"><Property name="hostContext" default="/solr"/></Set>
  <Set name="war"><Property name="jetty.base"/>/solr-webapp/webapp</Set>
  <Set name="defaultsDescriptor"><Property name="jetty.base"/>/etc/webdefault.xml</Set>
  <Set name="extractWAR">false</Set>
  <Get name="securityHandler">
         <Set name="loginService">
                 <New class="org.eclipse.jetty.security.HashLoginService">
                         <Set name="name">密码文件引入</Set>
              <!-- 引入密码文件 -->
                        <Set name="config">
                            <SystemProperty name="jetty.home" default="."/>
                            /etc/real.properties
                        </Set>
                 </New>
         </Set>
  </Get>
</Configure>
任何时候,更改完配置文件,都记得重启服务!这样服务-solr才能生效!

四、浏览器访问,查看,出现登录窗口,表示成功

这里输入admin及你设置的密码,即可登录!

五、附加说明

这里需要说明的是,即使你密码文件里,写的是MD5加密的密文,这里也只需输入明文密码,即可!
MD5加密,可以使用相关的工具生成,当然,使用其他的加密方式也可以!
发布了59 篇原创文章 · 获赞 2 · 访问量 5577

猜你喜欢

转载自blog.csdn.net/LDR1109/article/details/102944137