Dubbo+Zookeeper架構—高階篇17—Linux安裝ActiveMQ訊息中介軟體
阿新 • • 發佈:2018-12-19
IP:192.168.126.131 環境:CentOS 6.6、JDK8
1、 安裝 JDK 並配置環境變數(略)
JAVA_HOME=/usr/local/java/jdk1.8.0_72
2、 下載 Linux 版的 ActiveMQ(當前最新版 apache-activemq-5.11.1-bin.tar.gz)
$ wget http://apache.fayea.com/activemq/5.11.1/apache-activemq-5.11.1-bin.tar.gz
3、 解壓安裝 $ tar -zxvf apache-activemq-5.11.1-bin.tar.gz
$ mv apache-activemq-5.11.1 activemq-01 如果啟動指令碼 activemq 沒有可執行許可權,此時則需要授權(此步可選) $ cd /home/wusc/activemq-01/bin/ $ chmod 755 ./activemq
4、 防火牆中開啟對應的埠 ActiveMQ 需要用到兩個埠
一個是訊息通訊的埠(預設為 61616) 一個是管理控制檯埠(預設為 8161)可在 conf/jetty.xml 中修改,如下: <bean id="jettyPort" class="org.apache.activemq.web.WebConsolePort" init-method="start"> <!-- the default port number for the web console --> <property name="host" value="0.0.0.0"/> <property name="port" value="8161"/> </bean> # vi /etc/sysconfig/iptables 新增: -A INPUT -m state --state NEW -m tcp -p tcp --dport 61616 -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 8161 -j ACCEPT 重啟防火牆: # service iptables restart
5、 啟動 $ cd /home/wusc/activemq-01/bin
$ ./activemq start
6、 開啟管理介面:http://192.168.126.131:8161
預設使用者名稱和密碼為:admin/admin
登入後進入
7、 安全配置(訊息安全)
ActiveMQ 如果不加入安全機制的話,任何人只要知道訊息服務的具體地址(包括 ip,埠,訊息地址 [佇列或者主題地址],),都可以肆無忌憚的傳送、接收訊息。關於 ActiveMQ 安裝配置 http://activemq.apache.org/security.html
ActiveMQ 的訊息安全配置策略有多種,我們以簡單授權配置為例: 在 conf/activemq.xml 檔案中在 broker 標籤內容中的最後加入以下內容即可: $ vi /home/wusc/activemq-01/conf/activemq.xml <plugins> <simpleAuthenticationPlugin> <users> <authenticationUser username="wusc" password="wusc.123" groups="users,admins"/> </users> </simpleAuthenticationPlugin> </plugins> 定義了一個 wusc 使用者,密碼為 wusc.123,角色為 users,admins 設定 admin 的使用者名稱和密碼: $ vi /home/wusc/activemq-01/conf/jetty.xml <bean id="securityConstraint" class="org.eclipse.jetty.util.security.Constraint"> <property name="name" value="BASIC" /> <property name="roles" value="admin" /> <property name="authenticate" value="true" /> </bean> 確保 authenticate 的值為 true(預設) 控制檯的登入使用者名稱密碼儲存在 conf/jetty-realm.properties 檔案中,內容如下: $ vi /home/wusc/activemq-01/conf/jetty-realm.properties # Defines users that can access the web (console, demo, etc.) # username: password [,rolename ...] admin: wusc.123, admin 注意:使用者名稱和密碼的格式是 使用者名稱 : 密碼 ,角色名 重啟: $ /home/wusc/activemq-01/bin/activemq restart 設定開機啟動: # vi /etc/rc.local 加入以下內容 ## ActiveMQ su - wusc -c '/home/wusc/activemq-01/bin/activemq start'