[精讚] [會員登入]
774

臺中市雲端校務系統與Windows AD帳號整合(9)

3-2 Linux上隨系統開機啟動服務 以Centos 7 發行版為例 請注意, 此時提供服務的主机為Linux, 所以

分享此文連結 //n.sfs.tw/13280

分享連結 臺中市雲端校務系統與Windows AD帳號整合(9) @igogo
(文章歡迎轉載,務必尊重版權註明連結來源)
2019-10-24 12:40:21 最後編修
2019-05-06 08:24:43 By igogo
 

 

3-2 Linux上隨系統開機啟動服務

 

Centos 7 發行版為例

 

  • 請注意, 此時提供服務的主机為Linux, 所以redirect uri 也必須更改為此台要執行更改密碼服務的主机IP

  • 為方便測試, 請先將selinux及防火牆停用

 

 

安裝openjdk8

 

# yum install java-1.8.0-openjdk.x86_64

 

檢查是否有java 環境

 

# java -version

openjdk version "1.8.0_212"

OpenJDK Runtime Environment (build 1.8.0_212-b04)

OpenJDK 64-Bit Server VM (build 25.212-b04, mixed mode)

 

 

 

Windows ADip與名稱加到/etc/hosts

 

/etc/hosts

192.168.1.160 happy.tc.edu.tw happy

 

Ping windows AD的主机名稱

# ping happy.tc.edu.tw

PING happy.tc.edu.tw (192.168.1.160) 56(84) bytes of data.

64 bytes from happy.tc.edu.tw (192.168.1.160): icmp_seq=1 ttl=128 time=3.78 ms

 

 

將更改密碼程式移到 /opt

 

#mv -f /home/igogo/passwd /opt/

 

先手動執行服務看看是否能順利接上Windows AD

 

#java -jar passwd.jar

 

 

隨開機啟動設定

 

交由systemd 啟動, 先產生一個能識別是更改密碼的服務檔名

# touch /etc/systemd/system/passwd.service

 

編輯此檔

# vi /etc/systemd/system/passwd.service

 

[Unit]

Description=passwd

After=syslog.target

 

[Service]

User=igogo

WorkingDirectory=/opt/passwd

ExecStart=/usr/bin/java -Djava.net.preferIPv4Stack=true -Dserver.port=8080 -jar /opt/passwd/passwd.jar

SuccessExitStatus=143

 

[Install]

WantedBy=multi-user.target

 

 

  • 如果此台Linux主机只打算跑更改密碼服務, 那麼8080可以隨意更改, 此台机器若原先已經運行httpd80 port, 則可以預設8080, 下節設定反向代理的方式由80轉向8080 , 讓多個服務同時運行

 

  • 下載的更改密碼程式, 為了方便版本辨識,會加上版號, 例如 passwd-1.x.jar, 建議加入systemd 的服務時, 直接改為passwd.jar, 將來更新時, 只要把passwd.jar 覆蓋過去即可

  • User=igogo 是此程式要交由誰執行, 不可以是root, 如果已安裝httpd, 則交給apache, 或是建一個使用者, 讓該使用者有/opt/passwd的讀寫權限

 

 

這裡以交付apache為例

 

# chown -R apache.apache /opt/passwd/

 

 

加入隨開機啟動

# systemctl enable passwd

 

手動啟動

# systemctl start passwd

 

檢測看看是否成功啟動

 

# systemctl status passwd

# ss -ltn

 

 

80 port 執行服務

 

1. 一般80 port 可能已執行其它服務, 例如學校首頁

2. systemd 預設並不允許交由一般user 執行程式佔住 80 port

 

所以本章節旨在說明利用反向代理架構執行更改密碼服務

 

 

 

 

Apache當成httpd server

 

轉內部8080 port 到 到對外服務的 80 port

 

如果原先已有設定,請找詢此段<VirtualHost *:80> </VirtualHost> 加入以下檔案內容, 如果沒有則先建立一個空檔如下

 

# touch /etc/httpd/conf.d/default-site.conf

 

 

編輯default-site.conf

 

<VirtualHost *:80>

<Location /passwd/>

ProxyPass "http://127.0.0.1:8080/"

ProxyPassReverse "http://127.0.0.1:8080/"

Order deny,allow

Allow from all

</Location>

 

</VirtualHost>

 

記得/passwd/ 後面還有一個斜線

 

打開瀏覽器打上 http://linux ip/passwd/ 測試是否設定成功

 

 

 

 

 

 

 

END

你可能感興趣的文章

批次檢查tls憑證是否過期 tls憑證一年一簽, 台中市有三百多所學校, 寫成一檔案 skaps.tc.edu.tw www.skaps.tc.ed

apache 反向代理 80轉443轉8080 apache, proxy pass

管理Google共用雲端硬碟 管理Google共用雲端硬碟

雲端校務系統與OPENLDAP帳號整合(1) 本文件目標是為做單一帳號整合, 使用校端更改密碼服務, 將雲端校務系統的帳密同步至校內LDAP server, 並讓SA

臺中市雲端校務系統與Windows AD帳號整合(2) 安裝Active Directory網域服務

windows 11 常用指令 CHKDSK 命令檢查和修復磁碟錯誤 chkdsk <磁碟代號>: 系統檔案檢查程式 sfc /scanno

隨機好文

vue.js modal 作兩個選項按鈕並導向不同頁面 vue.js modal 作兩個選項按鈕

axios vuejs application/x-www-form-urlencoded 送資料 VUE.JS 以 application/x-www-form-urlencoded 送資料

資料表更改為多個primary key, MariaDB [database]> describe TABLENAME; 想由本來是兩個PRIMARY KE

讀取特定資料夾下的xls檔 讀取特定資料夾下的xls檔

找尋多個文件夾中最新檔案(jpg,png,txt)並複製到nexus資料夾 找尋多個文件夾中最新檔案(jpg,png,txt)並複製到集中資料夾