2023年5月31日 星期三

LSI storcli 安裝

url="https://docs.broadcom.com/docs-and-downloads/raid-controllers/raid-controllers-common-files/007.1613.0000.0000_Unified_StorCLI-PUL.zip"

apt-get install -y alien
apt-get install -y libncurses5

opwd=`pwd`
mkdir /tmp/StorCLI
cd  /tmp/StorCLI

wget -q -O- ${url} |busybox unzip -
cd Unified_storcli_all_os/Linux
alien storcli-007.1613.0000.0000-1.noarch.rpm
dpkg -i storcli_007.1613.0000.0000-2_all.deb
cd $opwd

安裝路徑
/opt/MegaRAID/storcli

2023年5月30日 星期二

sqfs + luks 加密

建立 sqfs 檔案 
mksquashfs /path/to/my/directory image.sqfs
truncate -s +8M image.sqfs
cryptsetup -q reencrypt --encrypt --type luks2   --resilience none --disable-locks --reduce-device-size 8M image.sqfs

掛載使用
losetup /dev/loop0 image.sqfs
cryptsetup luksOpen /dev/loop0 Encdisk
mount /dev/mapper/Encdisk   /mnt

卸載
umount /mnt
dmsetup remove Encdisk
losetup -d /dev/loop0

2023年5月29日 星期一

Tomcat JSP 讀取系統環境範例

<%@page contentType="text/html" pageEncoding="UTF-8"%>
Java 運行時環境版本 <%= System.getProperty("java.version") %><br>
Java 運行時環境供應商 <%= System.getProperty("java.vendor") %><br>
Java 供應商 URL <%= System.getProperty("java.vendor.url") %><br>
Java 安裝目錄 <%= System.getProperty("java.home") %><br>
<hr>
Java 虛擬機規範版本 <%= System.getProperty("java.vm.specification.version") %><br>
Java 虛擬機規範供應 <%= System.getProperty("java.vm.specification.vendor") %><br>
Java 虛擬機規範名稱 <%= System.getProperty("java.vm.specification.name") %><br>
Java 虛擬機實現版本 <%= System.getProperty("java.vm.version") %><br>
Java 虛擬機實現供應商 <%= System.getProperty("java.vm.vendor") %><br>
Java 虛擬機實現名稱 <%= System.getProperty("java.vm.name") %><br>
Java 運行時環境規範版本 <%= System.getProperty("java.specification.version") %><br>
Java 運行時環境規範供應商 <%= System.getProperty("java.specification.vendor") %><br>
Java 運行時環境規範名稱 <%= System.getProperty("java.specification.name") %><br>
<hr>
Java class 格式版本號 <%= System.getProperty("java.class.version") %><br>
Java class 路徑 <%= System.getProperty("java.class.path") %><br>
Java class 搜索路徑 <%= System.getProperty("java.library.path") %><br>
<hr>
JIT 編譯器 <%= System.getProperty("java.compiler") %><br>
擴展目錄路徑 <%= System.getProperty("java.ext.dirs") %><br>
<hr>
OS 名稱 <%= System.getProperty("os.name") %><br>
OS 架構 <%= System.getProperty("os.arch") %><br>
OS 版本 <%= System.getProperty("os.version") %><br>
<hr>
tmp 目錄 <%= System.getProperty("java.io.tmpdir") %><br>
文件分隔(UNIX 系統使用 “/”) <%= System.getProperty("file.separator") %><br>
路徑分隔(UNIX 系統使用 “:”) <%= System.getProperty("path.separator") %><br>
行分隔(UNIX 系統使用 “/n”) <%= System.getProperty("line.separator") %><br>
<hr>
Tomcat 帳號 <%= System.getProperty("user.name") %><br>
Tomcat 目錄 <%= System.getProperty("user.home") %><br>
Tomcat 工作目錄 <%= System.getProperty("user.dir") %><br>
Catalina home <%= System.getProperty("catalina.home") %><br>
Catalina base <%= System.getProperty("catalina.base") %><br>

Tomcat Catalina home base 差異

catalina.home = /usr/share/tomcat9      安裝目錄  bin lib 父目錄 bin etc lib

catalina.base = /var/lib/tomcat9 工作目錄  每個 Tomcat實例私有目錄  conf lib logs policy webapps work


2023年5月16日 星期二

Debian 11 Tomcat9 使用 https

編輯 /etc/tomcat9/server.xml  <Service name=""Catalina">加入


     <Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
               SSLEnabled="true"
ciphers="ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384"
               maxThreads="150" scheme="https" secure="true"
               keystoreFile="server.pfx" keystorePass="password"
               clientAuth="false" sslProtocol="TLSv1.2+TLSv1.3" />

IPTABLE port 443 轉向 8443
iptables -t nat -A PREROUTING -p tcp --dport 443 -j REDIRECT --to-port 8443

Debian 11 安裝 Tomcat 9摘要

安裝
apt install tomcat9

關閉熱部署
編輯 /etc/tomcat9/server.xml 尋找
<Host name="localhost"  appBase="webapps"
            unpackWARs="true" autoDeploy="true">
更改為
<Host name="localhost"  appBase="webapps"
            unpackWARs="false" autoDeploy="false">

sed -i 's/ unpackWARs="true"/ unpackWARs="false"/' /etc/tomcat9/server.xml
sed -i 's/ autoDeploy="true"/ autoDeploy="false"/' /etc/tomcat9/server.xml

隱藏 Tomcat 版本
編輯 /etc/tomcat9/server.xml
尋找 <Host name=  區間  加入
<!-- Hidden Tomcat Version -->
<Valve className="org.apache.catalina.valves.ErrorReportValve" showReport="false" showServerInfo="false" />

sed -i '/<\/Host>/i\  \
<!-- Hidden Tomcat Version -->  \
<Valve className="org.apache.catalina.valves.ErrorReportValve" showReport="false"  howServerInfo="false" />' \
/etc/tomcat9/server.xml

使用 Revese Proxy Log 的設定
編輯 /etc/tomcat9/server.xml <Host name= 區間 加入
<!-- Remote IP Valve -->
<Valve className="org.apache.catalina.valves.RemoteIpValve" remoteIpHeader="X-Real-IP" />
修改  <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
               prefix="localhost_access_log" suffix=".txt"
               pattern="%h %l %u %t &quot;%r&quot; %s %b" />
 <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
               prefix="localhost_access_log" suffix=".txt"
               pattern="%h %{X-Real-IP}i %l %u %t &quot;%r&quot; %s %b" />

sed -i '/<\/Host>/i\   \
<!-- Remote IP Valve -->  \
<Valve className="org.apache.catalina.valves.RemoteIpValve" remoteIpHeader="X-Real-IP" />' \
/etc/tomcat9/server.xml

sed -i 's/pattern="%h/pattern="%h %{X-Real-IP}i/' /etc/tomcat9/server.xml

預設 DOCROOT 
/var/lib/tomcat9/webapps/ROOT

測試檔
echo 'Hello! <%= config.getInitParameter("defaultGuestName") %>'>test.jsp

日誌檔
/var/log/tomcat9/

2023年5月12日 星期五

隱藏 PHP 版本

編輯  /etc/php.ini 修改
expose_php = Off