웹사이트 검색

CentOS 7에서 PostgreSQL 및 Nginx와 함께 Mattermost 설치


슬랙 대안. Mattermost는 방화벽 뒤의 최신 통신입니다.

독점 SaaS 메시징의 대안으로 Mattermost는 모든 팀 커뮤니케이션을 한 곳으로 가져와 어디서나 검색하고 액세스할 수 있도록 합니다.

Mattermost는 \Slack 제한이 아닌 Slack과 호환되어 기존 Slack 통합과의 호환성을 포함하여 Slack의 수신 및 발신 웹훅 통합의 상위 집합을 지원합니다. 기존 Slack 팀에서 사용자, 공개 채널 기록 및 테마 설정을 가져올 수 있습니다. Mattermost에 색을 입힙니다.

이 하우투에서 사용되는 이름, 변수 및 계정

local IP of server                 : 192.168.2.100
FQDN of server : mattermost.example.com
Name of mattermost database : mattermost
User to access mattermost database : mmuser
Password for mmuser within database: DBAss47slX3

전제 조건

이 Howto는 PostgreSQL을 데이터베이스 백엔드로 사용하여 CentOS7에 Mattermost를 설치하는 방법을 설명합니다. 이 가이드의 목적을 위해 모든 것을 단일 서버에 설치한다고 가정하지만 숙련된 사용자의 경우 부품을 분해하고 각 구성 요소(예: 데이터베이스 서버)를 다른 시스템에 설치하는 것이 쉬울 것입니다. 루트 사용자로 설치가 완료되었지만 물론 sudo 활성화된 사용자도 사용할 수 있습니다.

또한 서버의 IP 주소가 192.168.2.100이고 DNS가 mattermost.example.com으로 확인된다고 가정합니다. 따라서 이 하우투에서 192.168.2.100 또는 mattermost.example.com을 읽은 곳은 서버의 IP 주소로 대체하세요.

시작하기 전에 CentOS7의 최소 설치가 필요합니다. 설치 후 시스템이 이메일을 보낼 수 있도록 이메일을 올바르게 설정(postfix 구성)해야 합니다(예: 스마트 호스트 또는 유사한 솔루션을 통해).

계속하기 전에 몇 가지 간단한 사항을 확인하십시오.

서버의 터미널에서 메일 보내기를 시도합니다.

[

([email 를 서버에서 보낼 수 있는 이메일 주소로 바꾸세요). 시스템에서 이메일을 받았는지 확인하십시오!

mattermost.example.com의 이름 확인 확인

다른 컴퓨터(설정하려는 서버가 아님)에서 mattermost.example.com에 ping을 시도합니다. 긍정적인 결과를 얻어야 합니다.

C:\>ping mattermost.example.com
Pinging mattermost.witron.com [192.168.2.100] with 32 bytes of data:
Reply from 192.168.2.100: bytes=32 time<1ms TTL=64
Reply from 192.168.2.100: bytes=32 time<1ms TTL=64
Reply from 192.168.2.100: bytes=32 time<1ms TTL=64
Reply from 192.168.2.100: bytes=32 time<1ms TTL=64

Ping statistics for 192.168.2.100:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 0ms, Maximum = 0ms, Average = 0ms

인터넷 연결 확인

이제 패키지 wget(나중에 필요함)을 설치합니다.

[ ~] yum -y install wget

공개 IP를 결정하는 데 사용합니다. 인터넷 연결을 확인할 수 있습니다.

[ ~] wget http://ipinfo.io/ip -qO -
46.101.122.124

결과는 공용 IP 주소여야 합니다.

방화벽 상태를 확인하고 지금은 비활성화

CentOS7 설치에 방화벽이 활성화되어 있는지 확인하십시오. 다음을 입력하여 확인할 수 있습니다.

[ ~] systemctl status firewalld

다음과 같이 표시되면

활성: 활성(실행 중) 이후 ...

이 두 가지 명령으로 끄고 비활성화하십시오.

[ ~] systemctl disable firewalld

이 튜토리얼의 끝에서 firewalld를 다시 활성화하는 방법과 Mattermost와 함께 작동하도록 올바르게 설정하는 방법에 대한 지침을 찾을 수 있습니다.

위의 모든 검사를 통과했거나 이 튜토리얼에 사용할 수 있는 시스템이 있다는 것을 알고 있다면 지금 계속할 수 있습니다.

<엠>

PostgreSQL 데이터베이스 서버 설치

우리는 PostgreSQL을 Mattermost의 데이터베이스 백엔드로 사용할 것입니다. 다음 명령으로 설치하십시오:

[ ~] yum -y install postgresql-server postgresql-contrib

설치 후 데이터베이스를 초기화해야 합니다.

[ ~] postgresql-setup initdb
Initializing database ... OK

그런 다음 PostgreSQL을 시작하고 자동 시작을 위해 활성화하십시오.

[ ~]# systemctl enable postgresql
Created symlink from /etc/systemd/system/multi-user.target.wants/postgresql.service to /usr/lib/systemd/system/postgresql.service.

실행하여 PostgreSQL이 실행 중인지 확인하십시오.

[ ~]# systemctl status postgresql

이것은 이와 유사한 내용을 보고해야 합니다(텍스트 어딘가에 활성:활성(실행 중)이 있는지 확인하십시오).

? postgresql.service - PostgreSQL database server
Loaded: loaded (/usr/lib/systemd/system/postgresql.service; enabled; vendor preset: disabled)
Active: active (running) since Fri 2016-03-04 11:37:50 CET; 44s ago
Main PID: 17660 (postgres)
CGroup: /system.slice/postgresql.service
??17660 /usr/bin/postgres -D /var/lib/pgsql/data -p 5432
??17661 postgres: logger process
??17663 postgres: checkpointer process
??17664 postgres: writer process
??17665 postgres: wal writer process
??17666 postgres: autovacuum launcher process
??17667 postgres: stats collector process

Mar 04 11:37:48 mattermost systemd[1]: Starting PostgreSQL database server...
Mar 04 11:37:50 mattermost systemd[1]: Started PostgreSQL database server.
Mar 04 11:37:59 mattermost systemd[1]: Started PostgreSQL database server.

가장 중요한 데이터베이스 및 데이터베이스 사용자 생성

PostgreSQL은 이름이 postgres인 사용자 및 그룹을 자동으로 생성했습니다. 사용자 postgres를 사용하여 데이터베이스 엔진에 연결하고 데이터베이스와 데이터베이스에 액세스할 수 있는 사용자를 설정합니다.

사용자 postgres로 프롬프트를 시작합니다.

[ ~]# sudo -i -u postgres

이제 프롬프트가 다음으로 변경됩니다.

-bash-4.2$

이제 데이터베이스 서버에 연결할 수 있습니다.

-bash-4.2$ psql
psql (9.2.15)
Type "help" for help.
postgres=#

PostgreSQL 프롬프트 내에서 이제 이름이 가장 중요한 데이터베이스를 생성합니다.

postgres=# CREATE DATABASE mattermost;
CREATE DATABASE

이제 DBAss47slX3 암호를 사용하여 mmuser 사용자를 생성합니다.

postgres=# CREATE USER mmuser WITH PASSWORD 'DBAss47slX3';
CREATE ROLE

다음을 입력하여 Mattermost 데이터베이스에 대한 사용자 액세스 권한을 부여합니다.

postgres=# GRANT ALL PRIVILEGES ON DATABASE mattermost to mmuser;
GRANT
postgres=#

그런 다음 다음을 입력하여 PostgreSQL 프롬프트를 종료할 수 있습니다.

postgres=# \q
-bash-4.2$

그런 다음 사용자 postgres로 시작한 셸을 종료합니다.

-bash-4.2$ exit
logout
[ ~]#

사용자 이름/암호를 통해 localhost에서 PostgreSQL 데이터베이스에 대한 액세스를 허용합니다.

나중에 가장 중요한 인스턴스는 PostgreSQL 데이터베이스와 통신하고 사용자 이름과 암호로 인증하려고 합니다. 이를 허용하려면 PostgreSQL 구성을 약간 변경해야 합니다. 파일 열기:

vi /var/lib/pgsql/data/pg_hba.conf

vi 또는 nano와 같은 편집기를 사용하여 행을 변경하십시오.

host    all             all             127.0.0.1/32            ident

에게:

host    all             all             127.0.0.1/32            md5

파일을 저장한 다음 Postgresql을 다시 시작합니다.

[ ~]# systemctl restart postgresql

이전에 생성한 사용자 및 비밀번호로 데이터베이스 서버에 연결하여 올바르게 수행했는지 확인해야 합니다(서버에서 다른 비밀번호를 사용한 경우 비밀번호 사용).

[ ~]#

이제 PostgreSQL 서버와 데이터베이스가 Mattermost를 사용할 준비가 되었습니다!

Mattermost 다운로드 및 추출

wget을 사용하여 Github 저장소(이 튜토리얼 버전 생성 당시 v2.0.0이 현재 버전임)에서 Mattermost 서버 직접 사본을 다운로드할 수 있습니다.

[ ~]# wget -q "https://github.com/mattermost/platform/releases/download/v2.0.0/mattermost.tar.gz" -O mattermost.tar.gz

이제 아카이브를 추출하고 추출된 파일을 대상 위치에 넣습니다(이 경우 /opt/mattermost 사용).

[ ~]# mv mattermost /opt

매터모스트 설치

Mattermost 데몬을 실행하는 사용자 만들기

나중에 Mattermost를 데몬으로 실행할 것입니다. 따라서 mattermost라는 이름으로 시스템에 새 사용자를 설정합니다. 나중에 가장 중요한 인스턴스를 실행합니다. 다음 명령을 실행하여 mattermost 시스템 사용자 및 그룹을 만듭니다.

[ ~]# useradd -r mattermost -U -s /sbin/nologin

Mattermost용 데이터 저장소 폴더 생성

Mattermost는 예를 들어 일부 데이터를 저장하려고 합니다. 파일 등을 폴더에 업로드했습니다. 따라서 해당 폴더를 만들어야 합니다. 하드 드라이브의 어느 위치에나 있을 수 있지만 가장 중요한 사용자가 액세스할 수 있어야 합니다. 저는 /opt/mattermost/data를 사용하기로 했습니다. 다음 명령을 사용하여 폴더를 만듭니다.

[ ~]# mkdir -p /opt/mattermost/data

가장 중요한 디렉토리의 소유자 설정

이제 가장 중요한 디렉토리의 그룹과 소유자를 이전에 생성한 사용자와 그룹으로 설정합니다.

[ ~]# chmod -R g+w /opt/mattermost

가장 중요한 데이터베이스 연결 구성

Mattermost에게 PostgreSQL 데이터베이스에 연결하는 방법을 알려주려면 구성 파일을 편집해야 합니다.

/opt/mattermost/config/config.json

SqlSettings 섹션을 찾아 필요에 따라 변경하십시오.

이전

"SqlSettings": {
"DriverName": "mysql",
"DataSource": "mmuser:(dockerhost:3306)/mattermost_test?charset=utf8mb4,utf8",
"DataSourceReplicas": [],
"MaxIdleConns": 10,
"MaxOpenConns": 10,
"Trace": false,
"AtRestEncryptKey": "7rAh6iwQCkV4cA1Gsg3fgGOXJAQ43QVg"
},

이후

"SqlSettings": {
"DriverName": "postgres",
"DataSource": "postgres://mmuser::5432/mattermost?sslmode=disable&connect_timeout=10",
"DataSourceReplicas": [],
"MaxIdleConns": 10,
"MaxOpenConns": 10,
"Trace": false,
"AtRestEncryptKey": "7rAh6iwQCkV4cA1Gsg3fgGOXJAQ43QVg"
},

AtRestEncryptKey는 그대로 둘 수 있습니다!

가장 중요한 이메일 연결 구성

다시 구성 파일을 수정해야 합니다.

/opt/mattermost/config/config.json

EmailSettings 섹션을 찾아 필요에 맞게 변경합니다.

이전

 "EmailSettings": {
"EnableSignUpWithEmail": true,
"EnableSignInWithEmail": true,
"EnableSignInWithUsername": false,
"SendEmailNotifications": false,
"RequireEmailVerification": false,
"FeedbackName": "",
"FeedbackEmail": "",
"SMTPUsername": "",
"SMTPPassword": "",
"SMTPServer": "",
"SMTPPort": "",
"ConnectionSecurity": "",
"InviteSalt": "bjlSR4QqkXFBr7TP4oDzlfZmcNuH9YoS",
"PasswordResetSalt": "vZ4DcKyVVRlKHHJpexcuXzojkE5PZ5eL",
"SendPushNotifications": false,
"PushNotificationServer":
},

이후

 "EmailSettings": {
"EnableSignUpWithEmail": true,
"EnableSignInWithEmail": true,
"EnableSignInWithUsername": false,
"SendEmailNotifications": false,
"RequireEmailVerification": false,
"FeedbackName": "",
"FeedbackEmail": "",
"SMTPUsername": "",
"SMTPPassword": "",
"SMTPServer": "127.0.0.1",
"SMTPPort": "25",
"ConnectionSecurity": "",
"InviteSalt": "bjlSR4QqkXFBr7TP4oDzlfZmcNuH9YoS",
"PasswordResetSalt": "vZ4DcKyVVRlKHHJpexcuXzojkE5PZ5eL",
"SendPushNotifications": false,
"PushNotificationServer": ""
},

외부로 이메일을 보낼 수 있도록 이미 구성된 로컬 postfix 설치를 사용하기 때문에 127.0.0.1 및 포트 25를 사용합니다. 여기서 설정이 다른 경우 올바른 값을 설정해야 합니다!

내부 인터페이스(127.0.0.1)에서만 수신 대기하도록 mattermost 구성

기본적으로 가장 중요한 서버 인스턴스는 포트 8065(:8065)의 모든 인터페이스에서 수신 대기합니다. 우리는 Nginx-Server를 가장 중요하게 생각하기 때문에 localhost(127.0.0.1:8065)에서만 수신 대기하도록 이 동작을 변경합니다.

줄만 바꾸면

        "ListenAddress": ":8065",

에게

        "ListenAddress": "127.0.0.1:8065",

config.json 파일에서.

Mattermost 서버 테스트

이제 명령줄에서 실행하여 가장 중요한 서버가 시작되는지 테스트할 수 있습니다. 가장 중요한 사용자로서 이 작업을 수행해야 합니다. 실수로 루트로 이 작업을 수행한 경우 가장 중요한 폴더에 대한 권한을 다시 수정해야 합니다!

[ ~]# su - mattermost -s /bin/bash

Last login: Fri Mar 4 12:47:52 CET 2016 on pts/0
su: warning: cannot change directory to /home/mattermost: No such file or directory
-bash-4.2$

이제 가장 중요한 설치 디렉토리로 변경합니다.

-bash-4.2$ cd /opt/mattermost/bin/

명령줄에서 mattermost를 실행합니다.

-bash-4.2$ ./platform

출력은 다음과 유사해야 합니다.

[2016/03/04 13:00:10 CET] [INFO] Loaded system translations for 'en' from '/opt/mattermost/i18n/en.json'
[2016/03/04 13:00:10 CET] [INFO] Current version is 2.0.0 (5950/Sat Feb 13 15:42:01 UTC 2016/c71c5cef632c7dc68072167c6fe091a60835fa02)
[2016/03/04 13:00:10 CET] [INFO] Enterprise Enabled: false
[2016/03/04 13:00:10 CET] [INFO] Current working directory is /opt/mattermost/bin
[2016/03/04 13:00:10 CET] [INFO] Loaded config file from /opt/mattermost/config/config.json
[2016/03/04 13:00:10 CET] [INFO] Server is initializing...
[2016/03/04 13:00:10 CET] [INFO] Pinging sql master database
[2016/03/04 13:00:10 CET] [INFO] Pinging sql replica-0 database
[2016/03/04 13:00:10 CET] [DEBG] Deleting any unused pre-release features
[2016/03/04 13:00:10 CET] [INFO] The database schema has been set to version 2.0.0
[2016/03/04 13:00:10 CET] [DEBG] Initializing user api routes
[2016/03/04 13:00:10 CET] [DEBG] Initializing team api routes
[2016/03/04 13:00:10 CET] [DEBG] Initializing channel api routes
[2016/03/04 13:00:10 CET] [DEBG] Initializing post api routes
[2016/03/04 13:00:10 CET] [DEBG] Initializing web socket api routes
[2016/03/04 13:00:10 CET] [DEBG] Initializing file api routes
[2016/03/04 13:00:10 CET] [DEBG] Initializing command api routes
[2016/03/04 13:00:10 CET] [DEBG] Initializing admin api routes
[2016/03/04 13:00:10 CET] [DEBG] Initializing oauth api routes
[2016/03/04 13:00:10 CET] [DEBG] Initializing webhook api routes
[2016/03/04 13:00:10 CET] [DEBG] Initializing preference api routes
[2016/03/04 13:00:10 CET] [DEBG] Initializing license api routes
[2016/03/04 13:00:10 CET] [DEBG] Parsing server templates at /opt/mattermost/api/templates/
[2016/03/04 13:00:10 CET] [DEBG] Initializing web routes
[2016/03/04 13:00:10 CET] [DEBG] Using static directory at /opt/mattermost/web/static/
[2016/03/04 13:00:10 CET] [DEBG] Parsing templates at /opt/mattermost/web/templates/
[2016/03/04 13:00:10 CET] [INFO] Starting Server...
[2016/03/04 13:00:10 CET] [INFO] Server is listening on 127.0.0.1:8065
[2016/03/04 13:00:10 CET] [INFO] RateLimiter is enabled
[2016/03/04 13:00:10 CET] [DEBG] Checking for security update from Mattermost
[2016/03/04 13:00:10 CET] [EROR] Failed to get security update information from Mattermost.

Ctrl+C로 가장 중요한 서버 중지

그런 다음 가장 중요한 사용자로 시작한 셸을 종료합니다.

-bash-4.2$ exit
logout
[ ~]#

가장 중요한 인스턴스가 시작되지 않으면 출력을 주의 깊게 읽으십시오. config.json에서 간단한 쉼표를 잊어버렸기 때문에 많은 문제가 있었습니다. 또한 dbusers 암호에 특히 @ 기호가 없는 특수 문자를 사용하지 않도록 하십시오. 그것은 처음에 나를 이상하게 만들었습니다!

실수로 루트로 위의 명령을 실행했는데 작동할 수도 있는 경우 가장 중요한 폴더에 대한 권한을 다시 수정해야 합니다. 이 실수가 발생하면 이 명령을 사용하십시오.

[ ~]# chown -R mattermost:mattermost /opt/mattermost

모든 것이 잘 되었다면 이제 계속할 수 있습니다.

Mattermost를 데몬으로 설정

Mattermost를 데몬으로 설정하려면 파일 생성

/etc/systemd/system/mattermost.service

다음 내용으로:

[Unit]
Description=Mattermost
After=syslog.target network.target

[Service]
Type=simple
WorkingDirectory=/opt/mattermost/bin
User=mattermost
ExecStart=/opt/mattermost/bin/platform
PIDFile=/var/spool/mattermost/pid/master.pid

[Install]
WantedBy=multi-user.target

그런 다음 다음을 사용하여 데몬 파일을 다시 로드합니다.

[ ~]# systemctl daemon-reload

이제 예전처럼 이 서비스를 시작/중지/활성화/비활성화할 수 있습니다.

이제 Mattermost를 시작하고 상태를 확인한 다음 서비스로 활성화합니다(자동 시작).

Matermost 데몬 시작

[ ~]# systemctl start mattermost.service

가장 중요한 상태 확인

[ ~]# systemctl status mattermost.service
? mattermost.service - Mattermost
Loaded: loaded (/etc/systemd/system/mattermost.service; disabled; vendor preset: disabled)
Active: active (running) since Fri 2016-03-04 14:03:40 CET; 4s ago
Main PID: 18573 (platform)
CGroup: /system.slice/mattermost.service
??18573 /opt/mattermost/bin/platform
...
...

활성(실행 중)인지 확인하세요!

자동 시작을 위해 데몬 사용

[ ~]# systemctl enable mattermost.service
Created symlink from /etc/systemd/system/multi-user.target.wants/mattermost.service to /etc/systemd/system/mattermost.service.

이제 다음 명령을 실행하여 Mattermost가 127.0.0.1:8065에서 수신하는지 확실히 테스트합니다.

[ config]# curl -s "http://127.0.0.1:8065" | grep -b "2015 Mattermost"

2015 Mattermost가 포함된 한 줄을 얻어야 합니다.

11343:        <span class="pull-right footer-link copyright">© 2015 Mattermost, Inc.</span>

그렇다면 Mattermost 서버 인스턴스가 실행 중이고 계속할 수 있음을 확신할 수 있습니다.


SELinux 관련 권한 문제 수정

CentOS7에서 SELinux는 기본적으로 활성화되어 있습니다. 완전히 끌 수도 있지만 재구성하여 Mattermost 서버가 실행되도록 하는 것이 좋습니다.

다음 두 명령을 입력하여 SELinux 권한을 수정하십시오.

[ config]# setsebool -P httpd_can_network_connect 1

Nginx 서버 설정

Mattermost 서버 인스턴스 앞에 Nginx 서버를 배치하겠습니다.

주요 이점은 다음과 같습니다.

  • 포트 매핑 :80 ~ :8065
  • 표준 요청 로그
  • 나중에 SSL로 전환할 때 추가 옵션

epel 저장소 활성화

Nginx는 CentOS의 기본 리포지토리에 없습니다. 따라서 먼저 epel 저장소를 활성화해야 합니다. 이것은 쉬운 작업입니다. 다음을 입력하십시오.

[ config]# yum -y install epel-release && yum update

nginx 설치

epel-release를 활성화한 후 다음 명령을 사용하여 간단히 nginx를 설치할 수 있습니다.

[ config]# yum -y install nginx

이렇게 하면 nginx와 모든 종속 항목이 설치됩니다.

nginx 구성

Nginx를 구성하는 방법에는 여러 가지가 있습니다. 이 튜토리얼은 포트 80에서 Mattermost 서버를 호스팅하는 Nginx에 대한 매우 간단한 설정을 만드는 방법을 보여줍니다.

Nginx 기본 구성 파일 변경

다음을 실행하여 현재 nginx.conf의 백업을 만듭니다.

[ config]# cp /etc/nginx/nginx.conf /etc/nginx/nginx.conf.bak

그런 다음 /etc/nginx/nginx.conf를 다음 내용으로 바꿉니다.

# For more information on configuration, see:
# * Official English Documentation: http://nginx.org/en/docs/
# * Official Russian Documentation: http://nginx.org/ru/docs/

user nginx;
worker_processes auto;
error_log /var/log/nginx/error.log;
pid /run/nginx.pid;

events {
worker_connections 1024;
}

http {
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';

access_log /var/log/nginx/access.log main;

sendfile on;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout 65;
types_hash_max_size 2048;

include /etc/nginx/mime.types;
default_type application/octet-stream;

# Load modular configuration files from the /etc/nginx/conf.d directory.
# See http://nginx.org/en/docs/ngx_core_module.html#include
# for more information.
include /etc/nginx/conf.d/*.conf;

server {
server_name mattermost.example.com;
location / {
client_max_body_size 50M;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Frame-Options SAMEORIGIN;
proxy_pass http://127.0.0.1:8065;
}
}
}

이 문서의 앞부분에서 설명한 대로 올바른 호스트 이름을 사용했는지 확인하십시오.

구성 파일에 구문 오류가 없는지 확인하려면 다음 명령을 실행하여 구문을 확인하십시오.

[ config]# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

Nginx를 데몬으로 시작 및 활성화

Nginx 시작

[ config]# systemctl start nginx

상태 확인

[ config]# systemctl status nginx

다음을 표시하는 행이 최소한 출력되는지 확인하십시오.

...
Active: active (running)...
...

데몬으로 사용

[ config]# systemctl enable nginx
Created symlink from /etc/systemd/system/multi-user.target.wants/nginx.service to /usr/lib/systemd/system/nginx.service.

모든 것이 잘 되었다면 이제 Nginx 뒤에서 실행 중인 Mattermost 설치가 작동해야 합니다. 브라우저에서 다음 URL을 열어 확인하십시오.

Mattermost 로그인 화면이 나타납니다!

이제 이메일 주소를 입력하고 계정을 생성하여 Mattermost 설치를 계속 설정할 수 있습니다.

방화벽

이 자습서의 앞부분에서 방화벽을 비활성화했습니다. 다시 활성화하고 싶지만 포트 80을 열어 두려면(현재 Nginx를 통해 Mattermost에 사용) 다음을 수행하십시오.

방화벽 시작 및 재활성화

[ config]# systemctl enable firewalld
Created symlink from /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service to /usr/lib/systemd/system/firewalld.service.
Created symlink from /etc/systemd/system/basic.target.wants/firewalld.service to /usr/lib/systemd/system/firewalld.service.

방화벽에서 포트 80 열기

[ config]# firewall-cmd --reload
success

이제 Mattermost 설치에 액세스할 수 있으며 Firewalld도 실행 중입니다!

요약

이 튜토리얼이 유용하고 효과가 있기를 바랍니다. 프로덕션 환경에서는 Mattermost 웹사이트용 인증서를 생성/사용하고 Nginx를 통해 https를 활성화해야 합니다. 이 하우투를 약간 수정하면 쉽게 할 수 있습니다.