在Ubuntu系统上安装Rocket.Chat并启用HTTPS的完整教程

  1. 更新系统软件包列表:

sudo apt update
  1. 安装Node.js和npm:

sudo apt install -y nodejs npm
  1. 安装MongoDB数据库:

sudo apt install -y mongodb
  1. 启动MongoDB服务:

sudo systemctl start mongodb
  1. 下载Rocket.Chat的最新版本:

curl -L https://releases.rocket.chat/latest/download -o rocket.chat.tgz
  1. 解压下载的文件:

tar -zxvf rocket.chat.tgz
  1. 进入解压后的目录:

cd bundle
  1. 安装Rocket.Chat的依赖项:

sudo npm install
  1. 配置Rocket.Chat的HTTPS证书和密钥: 将你的SSL证书和密钥文件上传到服务器,并将它们命名为cert.pemkey.pem

  2. 创建Rocket.Chat的systemd服务文件:

sudo nano /etc/systemd/system/rocketchat.service
  1. 在打开的文件中,添加以下内容:

[Unit]
Description=Rocket.Chat
After=network.target remote-fs.target nss-lookup.target nginx.target mongod.target

[Service]
ExecStart=/usr/bin/node /path/to/rocket.chat/main.js
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=rocketchat
User=your_username
Environment=MONGO_URL=mongodb://localhost:27017/rocketchat ROOT_URL=https://your_domain.com PORT=3000
Environment=NODE_ENV=production
WorkingDirectory=/path/to/rocket.chat

[Install]
WantedBy=multi-user.target

请确保将/path/to/rocket.chat替换为Rocket.Chat的实际路径,将your_username替换为你的用户名,将https://your_domain.com替换为你的域名。

  1. 保存并关闭文件。

  2. 启动Rocket.Chat服务:

sudo systemctl start rocketchat
  1. 配置Nginx反向代理和HTTPS: 创建一个Nginx配置文件:

sudo nano /etc/nginx/sites-available/rocketchat

在打开的文件中,添加以下内容:

server {
    listen 80;
    server_name your_domain.com;

    location / {
        proxy_pass http://localhost:3000/;
        proxy_http_version 1.1;
        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-Forward-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forward-Proto http;
        proxy_set_header X-Nginx-Proxy true;
        proxy_redirect off;
    }
}

server {
    listen 443 ssl;
    server_name your_domain.com;

    ssl_certificate /path/to/cert.pem;
    ssl_certificate_key /path/to/key.pem;

    location / {
        proxy_pass http://localhost:3000/;
        proxy_http_version 1.1;
        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-Forward-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forward-Proto http;
        proxy_set_header X-Nginx-Proxy true;
        proxy_redirect off;
    }
}

请确保将your_domain.com替换为你的域名,将/path/to/cert.pem/path/to/key.pem替换为你的SSL证书和密钥文件的路径。

  1. 创建一个符号链接以启用Nginx配置文件:

sudo ln -s /etc/nginx/sites-available/rocketchat /etc/nginx/sites-enabled/
  1. 检查Nginx配置是否正确:

sudo nginx -t
  1. 重新加载Nginx配置:

sudo systemctl reload nginx

现在,你已经成功安装了Rocket.Chat并启用了HTTPS。你可以通过访问你的域名来验证Rocket.Chat是否正常工作。

你可能感兴趣的:(服务器,运维,ubuntu,https)