使用树莓派4来使用GroupSession!“后篇”

接下来,我会继续介绍GroupSession的安装等内容。

Screenshot 2023-10-17 at 14-35-43 無料版ダウンロード|無料グループウェア GroupSession.png

不提供过于详细的解释,但将从官方网站下载最新版本的数据。

顺便一提,我是用树莓派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。

Screenshot 2023-10-17 at 14-49-25 GROUPSESSION ログイン.png

现在,您觉得怎么样呢?
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 &quot;%r&quot; %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頁面,但由於地址不明,我不便將其記錄在這裡。如果我想起來的話,我會隨時補充。

广告
将在 10 秒后关闭
bannerAds