使用树莓派4来使用GroupSession!“后篇”
接下来,我会继续介绍GroupSession的安装等内容。
不提供过于详细的解释,但将从官方网站下载最新版本的数据。
顺便一提,我是用树莓派4(8GB版)在输入命令行时确认并复制粘贴到了Qiita上发布这篇文章。虽然我还有MacBookAir M1,但既然这个”机器”已经设置好了,我决定尝试使用它。我可以一边看YouTube一边写作,充分利用它作为台式机的同时,在后台运行一些没人使用的团队软件啦(笑)。
・それでは進めます。
# systemctl stop tomcat9.service
・上記のように、一度tomcatを停止させます。![Screenshot 2023-10-17 at 14-49-25 GROUPSESSION ログイン.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3578597/5c13d794-e77a-f09c-303a-747ba5886912.png)
# cd /
# cd /home/******/Downloads/ ← ******はユーザ名です
・この段階でダウンロードしたファイルが確認できると思います。
ファイル名は、「gsession.war」です。
# cp /home/******/Downloads/gsession.war /opt/ ← ******はユーザ名です
# cd /opt/tomcat9/webapps/
# ls
・上記操作で、/opt/tomcat9/webapps/に「gsession.war」がコピーされます。
# systemctl start tomcat9.service
・この状態で何もエラー等がなければ、ブラウザからアクセスします。
转述:访问网址是 http://localhost:8080/gsession 或者若是其他设备如手机,则是 http://192.***.+++.@@@:8080/gsession。
现在,您觉得怎么样呢?
ID和密码的初始设置是“admin”,请随意尝试。
当使用GroupSession时,如果仅限于本地使用,可能需要提供端口号(:8080),但为了美观起见,我们可以安装nginx并进行反向代理配置,以不需要端口号。
・関係ないと思われますが、一応tomcatを停止させます。
# systemctl stop tomcat9.service
# apt-get install -y nginx
・nginxのconfファイルを編集するため、バックアップします。 同一ディレクトリにバックアップしました。
# cp /etc/nginx/nginx.conf /etc/nginx/nginx.conf-bak
・元のファイルを削除し、新たに作成します。
# rm -rf /etc/nginx/nginx.conf 削除です。
# rm -rf /etc/nginx/nginx.conf 新規作成します。
请复制粘贴以下内容。
user www-data;
worker_processes auto;
pid /run/nginx.pid;
include /etc/nginx/modules-enabled/*.conf;
events {
worker_connections 768;
# multi_accept on;
}
http {
##
# Basic Settings
server {
listen 80;
server_name localhost;
root /opt/tomcat9;
# access_log /var/log/nginx/tomcat_access.log;
# error_log /var/log/nginx/tomcat_error.log;
location / {
proxy_pass http://127.0.0.1:8080/;
}
}
请使用Ctrl+O进行覆盖,使用Ctrl+X退出。
在这段描述之后,我重新启动了树莓派,并访问并确认在没有8080端口的情况下。
下一个步骤将立即实现SSL功能。
请按照以下命令进行操作。
・nginxとtomcatを一応止めます
# systemctl stop nginx
# systemctl stop tomcat9.service
・ssl関係を最新版へアップデートさせます。
# apt-get update && sudo apt upgrade openssl
# openssl genrsa -out /etc/nginx/ssl/server.key 2048
# openssl req -new -key /etc/nginx/ssl/server.key -out /etc/nginx/ssl/server.csr
# openssl x509 -days 3650 -req -signkey /etc/nginx/ssl/server.key -in /etc/nginx/ssl/server.csr -out /etc/nginx/ssl/server.crt
・このタイミングだったかな? オレオレ証明書の登録内容をきかれるので、適当に登録します。 ちなみに今回のssl対応は、第三者の証明期間ではなく、自己CAで行います。
・必要なファイルが作成されているか確認します。
# ls -l /etc/nginx/ssl/
・引き続き、nginxとtomcatのリバースプロキシの設定に進みます。
前述したポート番号不要設定時に新規作成したconfファイルに加筆します。
# nano /etc/nginx/nginx.conf
最终,我们最终会进行以下描述。
user www-data;
worker_processes auto;
pid /run/nginx.pid;
include /etc/nginx/modules-enabled/*.conf;
events {
worker_connections 768;
# multi_accept on;
}
http {
##
# Basic Settings
server {
listen 80;
server_name localhost;
root /opt/tomcat9;
# access_log /var/log/nginx/tomcat_access.log;
# error_log /var/log/nginx/tomcat_error.log;
location / {
proxy_pass http://127.0.0.1:8080/;
}
}
#HTTPS
server {
listen 443 ssl;
server_name localhost;
root /opt/tomcat9;
ssl_certificate /etc/nginx/ssl/server.crt;
ssl_certificate_key /etc/nginx/ssl/server.key;
# access_log /var/log/nginx/tomcat_access.log;
# error_log /var/log/nginx/tomcat_error.log;
location / {
proxy_pass http://127.0.0.1:58080/;
}
}
}
不仅仅是nginx,还需要对tomcat的配置文件进行修改。
以下是操作命令。如果需要,请备份xml文件。
# nano /opt/tomcat9/conf/server.xml
・オリジナルが以下の記載です。
<Service name="Catalina">
<!--The connectors can use a shared executor, you can define one or more n>
<!--
<Executor name="tomcatThreadPool" namePrefix="catalina-exec-"
maxThreads="150" minSpareThreads="4"/>
-->
<!-- A "Connector" represents an endpoint by which requests are received
and responses are returned. Documentation at :
Java HTTP Connector: /docs/config/http.html
Java AJP Connector: /docs/config/ajp.html
APR (HTTP/AJP) Connector: /docs/apr.html
Define a non-SSL/TLS HTTP/1.1 Connector on port 8080
-->
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443"
maxParameterCount="1000"
/>
<!-- A "Connector" using the shared thread pool-->
<!--
<Connector executor="tomcatThreadPool"
port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443"
maxParameterCount="1000"
以下是追加了中间7行和后面2行的情况。
<Service name="Catalina">
<!--The connectors can use a shared executor, you can define one or more n>
<!--
<Executor name="tomcatThreadPool" namePrefix="catalina-exec-"
maxThreads="150" minSpareThreads="4"/>
-->
<!-- A "Connector" represents an endpoint by which requests are received
and responses are returned. Documentation at :
Java HTTP Connector: /docs/config/http.html
Java AJP Connector: /docs/config/ajp.html
APR (HTTP/AJP) Connector: /docs/apr.html
Define a non-SSL/TLS HTTP/1.1 Connector on port 8080
-->
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443"
maxParameterCount="1000"
/>
※以下が追記の7行です!!!
<Connector port="58080" protocol="HTTP/1.1"
proxyPort="443" redirectPort="443"
scheme="https"
secure="true"
connectionTimeout="20000"
maxThreads="450"
URIEncoding="UTF-8" />
<!-- A "Connector" using the shared thread pool-->
<!--
<Connector executor="tomcatThreadPool"
port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443"
maxParameterCount="1000"
以下是修改后的内容,为了更加清晰易懂,我加大了行距。接下来是后半部分的两行。
<Valve className="org.apache.catalina.valves.AccessLogValve" directory>
prefix="localhost_access_log" suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" />
※以下の2行です
<Valve className="org.apache.catalina.valves.RemoteIpValve"
protocolHeader="x-forwarded-proto"/>
</Host>
</Engine>
</Service>
</Server>
如果需要直接复制粘贴上述内容,请将”※”替换为”#”,这样可以将其注释掉。
・在上述设定完成后,进行培训,然后重新启动,通过浏览器访问。
当然,这个网址是”https://localhost/gsession”。
在某些浏览器中,可能会收到危险警告,但您可以继续前进。
在FireFox中访问时,地址栏部分显示有SSL标识,但由于认证不正确,已被划掉。
在iPhone的Safari浏览器中访问时,可以清楚地看到有一个锁的标志,但当然会收到“这是一个危险的网站,确定要浏览吗?”的确认提示。
那么,你觉得怎么样呢?
由於過去有必要運行群組軟體,所以我們一直在32位元作業系統上運行。然而,現在64位元作業系統更為普及,因此我們重新進行了設定。
除此之外,我们还进行了路由器端口的开放,并确认可以通过全球IP访问。
之后,我注册了DDNS Now,并且确认了通过域名进行访问的功能。
由於我們的服務器角色,我們先安裝了clamav,配置了日本語環境,然後刪除了不必要的應用程序和守護進程,最後才進行了以下的記述。
希望能夠在不花費費用的情況下,讓團隊軟體能夠滿足家庭等需求並運作。
作为一个真正的服务器构建者,虽然这可能显得“太过廉价”,但如果能对某些方面有一些参考的话,我认为这是最好的,同时也为自己留下了备忘录。
在以前的設定中,我參考了很多Qiita頁面,但由於地址不明,我不便將其記錄在這裡。如果我想起來的話,我會隨時補充。