FSociety.pt

Infraestrutura Empresarial Segura | Four-Legged Firewall

View on GitHub

πŸ“ Servidor de Ficheiros - FSociety.pt

Servidor de ColaboraΓ§Γ£o e Ticketing

DocumentaΓ§Γ£o completa do Servidor de Ficheiros da infraestrutura FSociety.pt, incluindo Nextcloud com LDAP, Zammad, PostgreSQL, Redis e CrowdSec.


πŸ“‹ InformaΓ§Γ£o do Servidor

Campo Valor
Hostname files.fsociety.pt
EndereΓ§o IP 192.168.1.40
Sistema Operativo Ubuntu 24.04.3 LTS (Noble Numbat)
Kernel 6.8.0-generic
VirtualizaΓ§Γ£o KVM (Proxmox VE)
CPU Intel i5-7300HQ (4 cores)
RAM 2 GB
Disco 48 GB
Zona de Rede LAN (192.168.1.0/24)

πŸ—οΈ Arquitetura de ServiΓ§os

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚              files.fsociety.pt (192.168.1.40)                   β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚                                                                 β”‚
β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”‚
β”‚  β”‚                   NEXTCLOUD 32.0.0                       β”‚  β”‚
β”‚  β”‚            (nextcloud.fsociety.pt:443)                   β”‚  β”‚
β”‚  β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€  β”‚
β”‚  β”‚  Apache 2.4  β”‚  PHP-FPM 8.3  β”‚  Let's Encrypt SSL      β”‚  β”‚
β”‚  β”‚  /var/www/nextcloud  β”‚  Data: /mnt/data                 β”‚  β”‚
β”‚  β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€  β”‚
β”‚  β”‚  β€’ 65+ Apps: Calendar, Mail, Talk, Deck, Forms          β”‚  β”‚
β”‚  β”‚  β€’ LDAP: 19 utilizadores sincronizados                  β”‚  β”‚
β”‚  β”‚  β€’ Cache: Redis (socket) + APCu                         β”‚  β”‚
β”‚  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β”‚
β”‚                                                                 β”‚
β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”‚
β”‚  β”‚                    ZAMMAD 6.5.2                          β”‚  β”‚
β”‚  β”‚             (tickets.fsociety.pt:8081)                   β”‚  β”‚
β”‚  β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€  β”‚
β”‚  β”‚  Puma (9292)  β”‚  WebSocket (6042)  β”‚  Nginx (8081)      β”‚  β”‚
β”‚  β”‚  /opt/zammad                                             β”‚  β”‚
β”‚  β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€  β”‚
β”‚  β”‚  Systemd Services:                                       β”‚  β”‚
β”‚  β”‚  β€’ zammad.service         β€’ zammad-web.service          β”‚  β”‚
β”‚  β”‚  β€’ zammad-websocket.service  β€’ zammad-worker.service    β”‚  β”‚
β”‚  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β”‚
β”‚                                                                 β”‚
β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”‚
β”‚  β”‚               BASES DE DADOS                             β”‚  β”‚
β”‚  β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€  β”‚
β”‚  β”‚  PostgreSQL 16  β”‚  nextcloud  β”‚  zammad_production      β”‚  β”‚
β”‚  β”‚  Redis          β”‚  Cache + Sessions                      β”‚  β”‚
β”‚  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β”‚
β”‚                                                                 β”‚
β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”‚
β”‚  β”‚  CrowdSec v1.7.3  β”‚  cs-firewall-bouncer v0.0.34        β”‚  β”‚
β”‚  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β”‚
β”‚                                                                 β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

πŸ“š Índice da DocumentaΓ§Γ£o

# Documento DescriΓ§Γ£o
1 InstalaΓ§Γ£o Ubuntu, rede, pacotes base
2 Nextcloud - InstalaΓ§Γ£o Apache, PHP-FPM, Nextcloud
3 Nextcloud - ConfiguraΓ§Γ£o config.php, trusted_domains, mail
4 Nextcloud - LDAP IntegraΓ§Γ£o com Samba AD
5 Nextcloud - Apps 65+ apps organizadas por categoria
6 Zammad - InstalaΓ§Γ£o InstalaΓ§Γ£o e systemd services
7 Zammad - Nginx Nginx local (porta 8081)
8 PostgreSQL e Redis Bases de dados e cache
9 CrowdSec Sistema de deteΓ§Γ£o de intrusΓ΅es
10 ManutenΓ§Γ£o Backup, occ commands, logs

πŸ”Œ ServiΓ§os e Portas

Porta Protocolo ServiΓ§o DescriΓ§Γ£o
80 TCP Apache (HTTP) Redireciona para HTTPS
443 TCP Apache (HTTPS) Nextcloud (Let’s Encrypt)
5432 TCP PostgreSQL Base de dados (localhost)
6379 TCP Redis Cache e sessions (socket)
6042 TCP Zammad WebSocket WebSocket para Zammad
8081 TCP Nginx (Zammad) Proxy local para Zammad
9292 TCP Puma Backend Zammad

πŸ”— IntegraΓ§Γ΅es

LDAP (Samba AD)

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚                    Nextcloud LDAP Config                    β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚  Host: 192.168.1.10:389                                     β”‚
β”‚  Base DN: DC=fsociety,DC=pt                                 β”‚
β”‚  Bind DN: CN=nextcloud-ldap,CN=Users,DC=fsociety,DC=pt     β”‚
β”‚  User Filter: (&(objectClass=user)(objectCategory=person)  β”‚
β”‚               (!(userAccountControl:1.2.840.113556.1.4.803  β”‚
β”‚               :=2)))                                        β”‚
β”‚  Login Filter: samaccountname=%uid                          β”‚
β”‚  Group Filter: objectClass=group                            β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚  Utilizadores Sincronizados: 19                            β”‚
β”‚  Grupos Sincronizados: 6                                    β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Acesso Externo (via Webserver DMZ)

                  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                  β”‚    INTERNET     β”‚
                  β””β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                           β”‚
                  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β”€β”€β”€β”
                  β”‚   Webserver     β”‚
                  β”‚   10.0.0.30     β”‚
                  β”‚  (Nginx Proxy)  β”‚
                  β””β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                           β”‚
         β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
         β”‚                 β”‚                 β”‚
         β–Ό                 β–Ό                 β–Ό
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚   Nextcloud     β”‚ β”‚     Zammad      β”‚ β”‚   Mailcow       β”‚
β”‚ 192.168.1.40    β”‚ β”‚ 192.168.1.40    β”‚ β”‚ 10.0.0.20       β”‚
β”‚ Port 443        β”‚ β”‚ Port 8081       β”‚ β”‚ Port 443        β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
ServiΓ§o URL PΓΊblica Acesso
Nextcloud nextcloud.fsociety.pt Geo-based (completo LAN/VPN, Mail app externa)
Zammad tickets.fsociety.pt Apenas rede interna (LAN + VPN)

πŸ“Š Nextcloud - Apps Instaladas (65+)

Produtividade

ColaboraΓ§Γ£o

Ficheiros

SeguranΓ§a

IntegraΓ§Γ£o

GestΓ£o


πŸ’Ύ Armazenamento

DiretΓ³rio Tamanho DescriΓ§Γ£o
/var/www/nextcloud ~600 MB InstalaΓ§Γ£o Nextcloud
/mnt/data ~10 GB Ficheiros dos utilizadores
/opt/zammad ~300 MB InstalaΓ§Γ£o Zammad
/var/lib/postgresql ~500 MB Bases de dados

πŸ“Š MΓ©tricas de SeguranΓ§a (CrowdSec)

MΓ©trica Valor
VersΓ£o CrowdSec v1.7.3
Bouncer Ativo cs-firewall-bouncer v0.0.34
Scenarios Ativos 40+ (web, ssh, http)
Collections linux, nginx, apache2, nextcloud

πŸŽ“ InformaΓ§Γ£o AcadΓ©mica

Campo InformaΓ§Γ£o
InstituiΓ§Γ£o ESTG - Instituto PolitΓ©cnico do Porto
Unidade Curricular AdministraΓ§Γ£o de Sistemas II
Ano Letivo 2025/2026
Autores Ryan Barbosa, Hugo Correia, Igor AraΓΊjo

πŸ“„ LicenΓ§a

Este projeto estΓ‘ licenciado sob a MIT License.


πŸ“– ReferΓͺncias


**[⬅️ Voltar Γ  DocumentaΓ§Γ£o Principal](/fsociety-infrastructure/)** | **[PrΓ³ximo: InstalaΓ§Γ£o ➑️](/fsociety-infrastructure/05-servidor-ficheiros/01-instalacao.html)**

Última atualização: Dezembro 2025