- Preparação do Sistema e Dependências de Rede
Antes de prosseguir com a instalação da plataforma, é necessário garantir que as portas de rede essenciais estejam liberadas e que os serviços básicos de transferência de dados estejam ativos. O comando abaixo utiliza o gerenciador de pacotes para instalar utilitários de rede e configura o daemon SSH, além de ajustar o firewall para permitir tráfego web.
# Instalação de pacotes base e configuração do SSH
sudo dnf install -y curl openssh-server perl policycoreutils-python-utils
sudo systemctl enable --now sshd
# Liberação de portas no firewall (firewalld)
sudo firewall-cmd --permanent --add-service={http,https}
sudo firewall-cmd --reload
Caso o envio de notificações por e-mail seja um requisito, a instalação do postfix é recomendada. Durante a configuração interativa, selecione a opção de "Internet Site" e defina o FQDN (Fully Qualified Domain Name) do seu servidor. Aceite os padrões para as demais prompts.
sudo dnf install -y postfix
sudo systemctl enable --now postfix
- Provisionamento do Repositório e Instalação do Pacote
Para obter a versão Community Edition (CE), precisamos adicionar o repositório oficial ao sistema. Em seguida, a instalação é executada definindo a variável de ambiente EXTERNAL_URL, que instrui o instalador a configurar o NGINX interno e o banco de dados com o domínio correto. O uso de HTTPS é altamente recomendado e pode ser automatizado via Let's Encrypt se o DNS estiver corretamente apontado.
# Adicionando o repositório oficial do GitLab CE
curl -s https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash
# Executando a instalação com a URL externa definida
sudo EXTERNAL_URL="http://gitlab.seudominio.com" dnf install -y gitlab-ce
- Autenticação Inicial e Recuperação de Credenciais
Após a conclusão do processo de provisionamento, acesse a URL definida anteriormente através do navegador. O usuário padrão para o primeiro acesso é o root. Se uma senha personalizada não foi definida via variável de ambiente durante a instalação, o sistema gerará um token aleatório.
Para recuperar essa credencial temporária, execute:
sudo cat /etc/gitlab/initial_root_password
Aviso de Segurança: Por motivos de segurança, este arquivo é automaticameente removido pelo sistema após 24 horas ou na primeira execução do comando gitlab-ctl reconfigure. Altere a senha padrão imediatamente após o login inicial.
- Hardening e Configurações Pós-Instalação
Com a instância operacional, o próximo passo envolve a aplicação de políticas de segurança. Recomenda-se restringir o registro público de novos usuários, configurar a autenticação de dois fatores (2FA) obrigatória para administradores e integrar provedores de identidade externos (LDAP/SAML) se aplicável ao ambiente corporativo.