Turvallisuus
Tarkistuslista Antimatter-palvelimen turvaamiseen: mitä avata, mitä rajoituksia ja tietosuojan asetuksia tarkastella, mitkä ulkoiset palvelut palvelin käyttää ja miten ilmoittaa tietoturvallisuuteen liittyvästä ongelmasta.
Mitä avata
| Portti | Palvelu | Avoimuus |
|---|---|---|
| 443/tcp, 443/udp, 80/tcp | HTTPS-välityspalvelin (Caddy tai nginx) | Julkinen: näin käyttäjät pääsevät Antimatteriin. |
| 8443/udp ja 8443/tcp | Puheluiden media | Julkinen, jos puheluja käytetään verkoston ulkopuolelta. |
| 8065/tcp | Antimatterin verkkopalvelin | Vain välityspalvelimelle: julkaise se osoitteessa 127.0.0.1 (HTTP_PORT=127.0.0.1:8065). |
| 8067/tcp | Mittarit | Vain yksityisessä verkossa, jos käytössä. Ei kirjautumista. |
| 8074/tcp ja udp | Klusterin gossip | Vain klusterin solmujen välillä. |
| 5432, 9000, 8080, 8066 | PostgreSQL, tiedostovarasto, GIF-palvelu, push-välityspalvelin | Ei koskaan. Compose-tiedostot pitävät ne sisäisissä verkoissa ilman julkaistua porttia. |
Sivuston compose-tiedosto ajaa myös kaikki kontit no-new-privileges-asetuksella, ajaa Antimatterin etuoikeutettuna käyttäjänä distroless-kuvassa ja ajaa GIF-palvelun luku-only-tiedostojärjestelmällä. Tietokanta, varasto ja GIF-palvelu ovat verkossa, jolla ei ole Internet-yhteyttä.
Tarkistuslista asennuksen jälkeen
- Luo ensimmäinen ylläpitäjätili ennen kuin kukaan muu voi päästä palvelimeen (Asennus).
- Palvita Antimatteria vain HTTPS:llä ja aseta sivuston osoite
https://-osoitteeksi (Domain and HTTPS). - Pidä
.env,config.jsonja TLS-avaimet luettavissa vain root-käyttäjälle (tai palvelimen käyttäjälle):chmod 600 .env. - Päätä, ketkä voivat luoda tilejä, ja jätä Ota avoin palvelin käyttöön pois käytöstä, ellei yhteisö ole julkinen. Ota Vaadi sähköpostin vahvistus käyttöön, kun sähköposti toimii (Kirjautuminen ja tilet).
- Ota monivaiheinen todennus käyttöön ja pakota se vähintään ylläpitäjätileille, tai käytä identiteettitoimittajasi omaa.
- Tarkista alla olevat ulkoiset yhteydet, erityisesti Puheluiden oletuksena käyttämä STUN-palvelin.
- Aseta tekoälyn salausavain (
AM_AI_ENCRYPTION_KEY) ennen malliyhteysten lisäämistä ja säilytä kopio erillään tietokantavarmuuskopioista (Tekoäly). - Varaa ja testaa palautus (Varmuuskopiot ja päivitykset).
- Päivitä kuvat ja paketit ajantasilla: tietoturvakorjaukset tulevat uusien versioiden mukana.
Nopeusrajoitukset
Palvelin voi rajoittaa, kuinka monta API-pyyntöä kullakin asiakkaalla on. Rajoitus on oletusarvoisesti poissa. Järjestelmäkonsoli › Ympäristö › Käyttörajoitukset:
| Asetus | Avain | Oletusarvo |
|---|---|---|
| Ota nopeusrajoitus käyttöön | RateLimitSettings.Enable | Ei käytössä |
| Maksimimäärä kyselyjä per sekunti | RateLimitSettings.PerSec | 10 |
| Maksimi burstin koko | RateLimitSettings.MaxBurst | 100 |
| Muistivaraston koko | RateLimitSettings.MemoryStoreSize | 10000 asiakasta seurataan |
| Rajaa pyyntöjen tahti etäosoitteen perusteella | RateLimitSettings.VaryByRemoteAddr | on |
| Rajaa pyyntöjen tahti käyttäjän perusteella | RateLimitSettings.VaryByUser | Ei käytössä |
| Rajaa pyyntöjen tahti HTTP-päytteen perusteella | RateLimitSettings.VaryByHeader | tyhjä |
Välityspalvelimen takana osoitteen perusteella tehtävät rajoitukset toimivat vain, jos palvelin tietää kunkin asiakkaan osoitteen (ServiceSettings.TrustedProxyIPHeader ja ServiceSettings.TrustedProxyIPs, ks. Asiakasosoitteet välityspalvelimen takana). Muuten kaikki pyynnöt näyttävät tulevan välityspalvelimesta, ja kaikki jakavat yhtä rajoitusta. Sama koskee IP-suodatuksia ja tilintarkastuslokeissa olevia osoitteita.
Kirjautumisyrityksiä rajoitetaan erikseen: Maksimikirjautumisyritykset (10) lukitsee tilin, jos salasana epäonnistuu tuon monta kertaa.
IP-suodatus
Järjestelmäkonsoli › Sivuston asetukset › IP-suodatus rajoittaa palvelimeen pääsyä IP-osoitteen perusteella, ja siinä on sallimis- ja estääntoissasäännöt (kumpikin osoite tai CIDR-alue). Kun Ota IP-suodatus käyttöön on päällä, henkilöt, joiden osoite vastaa estääntoissasääntöä, tai ei vastaa minkään sallimissäännön, eivät voi päästä palvelimeen. Sivusto hylkää säännöt, jotka estäisivät oman osoitteesi. Välityspalvelimen takana määritä asiakasosoitteet ensin (Asiakasosoitteet välityspalvelimen takana), muuten kaikki pyynnöt näyttävät tulevan välityspalvelimesta.
Lähetys ja tiedonjako
| Asetus | Missä | Oletusarvo |
|---|---|---|
Suurin tiedostokoko (FileSettings.MaxFileSize) | Ympäristö › Tiedostojen tallennus | 100 MB. Pidä välityspalvelimen pyyntokokorajoitus vähintään tässä. |
Maksimi kuormakoko (tavua) (ServiceSettings.MaximumPayloadSizeBytes) | Ympäristö › Web-palvelin | 300000: suurin API-pyyntö, lukuun ottamatta tiedostojen lähetystä |
Salli tiedostojen jakaminen (FileSettings.EnableFileAttachments) | Sivuston asetukset › Tiedonjako ja lataukset | on |
| Salli tiedistolataus mobiililaitteilla, Salli tiedostojen lataaminen mobiililaitteissa | Sivuston asetukset › Tiedonjako ja lataukset | on |
Ota julkiset tiedostolinkit käyttöön (FileSettings.EnablePublicLink) | Sivuston asetukset › Julkiset linkit | pois: kun päällä, ihmiset voivat jakaa tiedoston linkillä, joka toimii ilman kirjautumista |
Ota käyttöön SVG-tiedostot (ServiceSettings.EnableSVGs) | Sivuston asetukset › Viestit | pois uudella palvelimella: kun päällä, SVG-kuvat näytetään sisäkkäisinä |
Ota tiedostohaku käyttöön (ServiceSettings.EnableFileSearch) | Sivuston asetukset › Tiedonjako ja lataukset | päällä: pois-asento piilottaa tiedostohaun hakutulosten Tiedostot-välilehdeltä sekä klassisessa verkkosovelluksessa että Fusionissa |
Ota tiedostoindeksointi käyttöön (ElasticsearchSettings.EnableFileIndexing) | Ympäristö › Elasticsearch, kun Elasticsearch tai OpenSearch on määritetty | päällä: pois-asento lopettaa uusien tai muutettujen tiedostojen indeksoinnin, mutta aiemmin indeksoidut tiedostot pysyvät haettavissa |
Antimatter ei skannaa lähetettyjä tiedostoja haittaohjelmien varalta.
Yksityisyyden asetukset
Osoitteessa Järjestelmäkonsoli › Sivuston asetukset › Käyttäjät ja tiimit:
| Asetus | Avain | Oletusarvo | Toiminto |
|---|---|---|---|
| Näytä sähköpostiosoite | PrivacySettings.ShowEmailAddress | on | Ei, jäsenten sähköpostiosoitteet ovat piilossa kaikilta paitsi ylläpitäjiltä. Sammuta tämä julkisilla palvelimilla. |
| Näytä koko nimi | PrivacySettings.ShowFullName | on | Ei, koko nimi on piilossa ja sen sijaan näytetään käyttäjätunnus. |
| Ota ignorointi, esto ja viestipyynnöt käyttöön | PrivacySettings.EnableUserBlocking | on | Katso alla. |
| Salli käyttäjien avata suorat viestit kanavat | TeamSettings.RestrictDirectMessage | Minkä tahansa Antimatter-palvelimen käyttäjän kanssa | Tai Mikään tiimin jäsen: vain ihmiset, jotka jakavat yhteisön. |
Sivuuttaminen, estäminen ja viestipyynnöt
Kun Ota ignorointi, esto ja viestipyynnöt käyttöön on päällä (oletusarvo), käyttäjät voivat ignoroida ja estää toisiaan sekä valita, saapuvatko tuntemattomien lähettämät suorat viestit normaalisti, odottavatko ne viestipyyntöinä vai hylätäänkö ne suoraan (hylätty henkilö ei voi aloittaa suoraa tai ryhmäviestiä heidän kanssaan eikä kirjoittaa viestiketjuun, jota ei ole hyväksytty). Valinta voi vaihdella yhteisöittäin, ja tiukin yhteisö, jonka jäsenet käyttäjät jakavat, on määräävä. Tämä sopii julkisiin yhteisöihin. Työpaikoilla, joilla kollegoiden on voitava tavoittaa toisensa aina, voit ottaa ominaisuuden pois käytöstä (AM_PRIVACYSETTINGS_ENABLEUSERBLOCKING=false): tällöin mitään suoraviestivalintoja ei enää pakoteta, mutta käyttäjien tekemät listat ja valinnat säilyvät ja otetaan uudelleen käyttöön, jos ominaisuuden ottaa takaisin käyttöön. Yhteisön näkyvät profiilitiedot pakotetaan molemmissa tapauksissa; järjestelmän ylläpitäjät ja käyttäjä itse näkevät aina kaikki tiedot.
Istunnot ja tunnisteet
- Istuntojen kesto ja tyhjää aikaa odottava aikakatkaisu: katso Kirjautuminen ja tilit. Lyhyemmät istunnot tarkoittavat, että kadonnut kannettava tietokone tai puhelin pysyy kirjautuneena lyhyemmän ajan.
- Ota henkilökohtaiset pääsytunnustiedot käyttöön (
ServiceSettings.EnableUserAccessTokens, pois käytöstä) mahdollistaa API-tunnusten luomisen; Henkilökohtaisen pääsytunnisteen enimmäiskäyttöaika (päivää) rajoittaa niitä. Molemmat ovat Järjestelmäkonsoli › Integraatiot › Integraatioiden hallinta. - Kirjauttaa kaikki ulos kerralla, esimerkiksi epäillyn tietovarkauden jälkeen: Peruuta kaikki istunnot osoitteessa Järjestelmäkonsoli › Käyttäjien hallinta › Käyttäjät.
- Antimatterin käyttöliittymässä käyttäjiä varoitetaan uudesta kirjautumisesta omaan tiliinsä, kun he ovat yhteydessä, ja he voivat katkaista yhteyden itse (katso Missä olet kirjautunut). Järjestelmän ylläpitäjille ei ilmoiteta muiden käyttäjien kirjautumisista.
Yhteydet ulkoisiin palveluihin
Antimatter ei ota yhteyttä Mattermost, Inc.:n ylläpitämiin palveluihin. Se ei lähetä telemetriaa, kaatumisraportteja tai tietoturvapäivitysten tarkistuksia, eikä se hae tuotetiedotteita. Mattermostista siirretty asetuskokonaisuus, joka edelleen mainitsee yhden Mattermostin palveluista (sen push-palvelut, sen soikkamarkkinapaikka, sen tiedotteet tai sen puheluiden STUN-palvelin), ei saa palvelinta ottamaan yhteyttä niihin: ne osoitteet ohitetaan.
Palvelin ja soittavat yhteyteen muihin ulkoisiin palveluihin vain niiden ominaisuuksien vuoksi, jotka niitä vaativat, sekä niihin palveluihin, jotka määrität:
| Ominaisuus | Yhteydet | Oletuksena |
|---|---|---|
| Puhelut: julkisten osoitteiden etsiminen STUN:lla. Palvelin ja jokainen puhelua liittyvä henkilö lähettävät pyynnön, joka näyttää STUN-palvelimelle heidän IP-osoitteensa ja porttinsa. | Cloudflaren julkinen STUN-palvelin, stun.cloudflare.com | on, kun Puhelut-sovellus on käytössä. Muutokset tehdään kohdassa Puhelut. |
Linkkien esikatselut: palvelin hakee viesteissä linkitetyt sivut (Ota käyttöön verkkosivujen linkkien esikatselut, ServiceSettings.EnableLinkPreviews) | verkkosivut, joihin ihmiset linkittävät | on. Poista käytöstä asettamalla AM_SERVICESETTINGS_ENABLELINKPREVIEWS=false. |
| Push-ilmoitukset mobiilisovellukseen | oma push-välityspalvelin (Push-ilmoitukset) | pois, kunnes asetat sen osoitteen |
etäsovellusten kauppa (PluginSettings.EnableRemoteMarketplace) | asettama Kaupan URL | pois, eikä osoitetta ole |
| Sähköposti | SMTP-palvelin | oletuspalvelin on localhost |
| Malliyhteydet (uudelleenkirjoitus, yhteenvedot, käännös, tekstiksi lukeminen, agentit ja sovellukset), yhteisöjen ylläpitäjien omat malliyhteydet | Tekoälytoimittajat, jotka on lisätty Järjestelmäkonsoli › Tekoäly › Malliyhteydet -kohdassa tai yhteisön asetuksissa (Tekoäly) | ei mitään, kunnes joku lisää yhteyden |
| Kertakirjautuminen, tekoälykeskustelusovelluksen tekoälypalvelut, puheesta tekstiksi -muunnos ja käännös, lähtevät webhookit sekä sovellukset, kuten Mail, Kalenteri, GitHub, GitLab tai Jira | palvelut, jotka määrität | pois, kunnes määrität ne |
Oletuksena palvelin hylkää yhteydet yksityisiin ja silmukointiosoitteisiin näissä (linkkiesikatselut, webhookit, sovellukset, yhteisöjen malliyhteydet), jotta viestillä tai integraatiolla ei voi päästä käsiksi sisäiseen verkkoosi. Listaa sisäiset isännät, joihin se saa yhdistää, kohdassa Salli luottamattomat sisäiset yhteydet osoitteisiin (ServiceSettings.AllowedUntrustedInternalConnections, kohdassa Järjestelmäkonsoli › Ympäristö › Kehittäjä); sivuston compose-tiedostossa gifs on listattu siellä.
Haavoittuvuuksien ilmoittaminen
Ilmoita tietoturvaongelmat yksityisesti, kuten Antimatterin tietoturvakäytännössä on ohjeistettu, eikä julkisissa ongelmaraporteissa.