Git Product home page Git Product logo

signal-setup-guide's Introduction

Setup Guide for Signal

On this repository, you will find guides about Signal Setup that might help people who want to run their own signal server.

Requirements

  • SSL Certificate of your server's domain (For secure communication, can be bypassed but it will be less secure)
  • Google Recaptcha (For anti-spam in authentication)
  • Firebase (For push notification, if not used, the notification will not work correctly)
  • Twilio (For SMS OTP, can be by passsed by priting the OTP to another means to user)
  • Amazon Web Service (For Profile Picture / Avatar, Attachments, and CDS Queue. Can be subtituted with MinIO & LocalStack)

Content

What's proven works

What's not proven work

Updating

If you have do some modification to your code and want to get update from the official git repo, you can follow UPDATING

For the new guide please see Signal v3.21 Guide.

There is a new way to implement MinIO in v3.21 using a cleaner way than older version, please see the guide

FAQ

Q: Will I be able to do ... with Signal?

A: My suggestion is first you need to setup normal signal server and check if it will fulfill your need.

Q: My chat only goes one way or can't send chat even when the server already set properly.

A: Probably caused by keystore haven't contain your SSL certificate / certificate did not match the url / you have not setup the Unidentified Delivery properly in the client. Will be explained in each guide of the server & clients.

Q: How to setup Turn Server? I can't do voice/video call.

A: Probably related to your port, either it is not allowed by the firewall or it is not properly set. See my example config on Coturn Server

Q: Can I subtitute AWS to MinIO?

A: I tried it here signal-minio using modification created by kondal789rao . Someone also did a pull request here: Use MinIO instead of the AWS. Also you can try to look into Localstack for local development.

Q: Can I disable / change Twilio? (by getting the generated OTP on the server)

A: Yes, it is possible, you need to change TwilioSmsSender Class, see example on Signal Server Without Twilio.

Q: Can I use Signal in localhost / internal IP / self-signed certificate (by trusting all certificate)

A: Yes, it is possible but it is not secure, see example on Signal Server Self Signed Certificate.

Q: Can I remove Google Mobile Service (GMS) from Signal?

A: Yes! A Signal user named "tx-hw" did it on their Github Fork of Signal-Android. You can read more about it on their Signal Community Post

Contributor

This guide has been written by the help of the developers from community.

  • konglomerat-id wrote the configuration and steps to setup signal server 2.55
  • LiteSpeedDev wrote nginx configuration and turn/stun server
  • kondal789rao modified AWS to MinIO.
  • madeindra compiled the guide, improve the steps, and wrote more guide on uncovered topics
  • sinholic wrote iOS guide
  • amargarido helped to improve the readme

You are welcome to contribute on this guide, please fork the repository and create a Pull Request.

Issue

If you have any questions please create a discussion instead of issue.

You are recommended to open a discussion thread here if you face a difficulties to let the communities help you too and contributing to the communities in the process.

Donating

You can donate to me if you think this guide has helped you, your donation will greatly appreciated.

Bitcoin (BTC):

16xY3wXVNmRqBzbyQpE3VpYawbjuXkyDe2

16xY3wXVNmRqBzbyQpE3VpYawbjuXkyDe2

signal-setup-guide's People

Contributors

amargarido avatar madeindra avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.