[精讚] [會員登入]
860

臺中市雲端校務系統與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

你可能感興趣的文章

臺中市雲端校務系統與Windows AD帳號整合(8) 三 開機啟動服務 3-1 Windows Server上隨系統開機啟動服務 寫一個bat檔 cd C:UsersAdmi

臺中市雲端校務系統與Windows AD帳號整合(3) LDAP的基本概念

proxmox lxc 救援 今天突然接到一名強者我朋友的臨時求援 他說他把pve 從5.1升到5.2後, kvm的虛擬机器都沒問題 , 但是lxc的

臺中市雲端校務系統與Windows AD帳號整合(7) 設定校端更改密碼程式及執行

利用expect script 查詢ap數量,再送到google sheet及line群組通知 利用expect script 查詢ap數量

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

隨機好文

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

vue.js component 在parent與child 傳值 component 在parent與child 傳值

編碼的順序 utf8 big5

00-F2 的 IPV6 反解設定 近日, 強者我的大神同事, line 傳來一句: igogo 上次你那個ipv6的設定檔 再幫我跑一次 如連結 程式都寫

2018 hoc 頒獎 校慶到了,啦啦隊比賽如火如荼展開,學務主任將頒發獎狀給表現優異的班級。請完成以下程式碼,讓程式將啦啦隊表演成績由高至低依序輸出。