diff options
| -rw-r--r-- | .gitignore | 1 | ||||
| -rw-r--r-- | Makefile | 2 | ||||
| -rw-r--r-- | docs/backup.md | 10 | ||||
| -rw-r--r-- | docs/backup/methods.md | 2 | ||||
| -rw-r--r-- | docs/bootstrap.md | 20 | ||||
| -rw-r--r-- | docs/boxes.md | 2 | ||||
| -rw-r--r-- | docs/certs.md | 2 | ||||
| -rw-r--r-- | docs/cryptocalypse.md | 6 | ||||
| -rw-r--r-- | docs/domains.md | 4 | ||||
| -rw-r--r-- | docs/firewall.md | 26 | ||||
| -rw-r--r-- | docs/index.md | 18 | ||||
| -rw-r--r-- | docs/install.md | 13 | ||||
| -rw-r--r-- | docs/keys.md | 24 | ||||
| -rw-r--r-- | docs/nodo.md | 4 | ||||
| -rw-r--r-- | docs/nodo/allocation.md | 2 | ||||
| -rw-r--r-- | docs/provision.md | 2 | ||||
| -rw-r--r-- | mkdocs.yml | 56 |
17 files changed, 140 insertions, 54 deletions
@@ -2,3 +2,4 @@ /recentchanges /www site +.cache @@ -20,4 +20,6 @@ web: web_deploy: @rsync -avz --delete site/ padrao:/var/sites/padrao/www/ +docs: web + publish: web web_deploy diff --git a/docs/backup.md b/docs/backup.md index 657262c..f54d45e 100644 --- a/docs/backup.md +++ b/docs/backup.md @@ -1,7 +1,7 @@ # Backup -* [Conceitos](concepts). -* [Convenções](conventions). -* [Métodos](methods). -* [Restauração](restore). -* [Migração de sites](migration). +* [Conceitos](backup/concepts.md). +* [Convenções](backup/conventions.md). +* [Métodos](backup/methods.md). +* [Restauração](backup/restore.md). +* [Migração de sites](backup/migration.md). diff --git a/docs/backup/methods.md b/docs/backup/methods.md index 456e372..f32a09e 100644 --- a/docs/backup/methods.md +++ b/docs/backup/methods.md @@ -8,7 +8,7 @@ armazenamento de backups, divididos nas partes: A discussão aqui não tem caráter prático mas meramente teórico, sem menção às implementações dos métodos. Para isso, veja a página -[Convencoes](../conventions). +[Convencoes](conventions.md). ## Métodos de transferência diff --git a/docs/bootstrap.md b/docs/bootstrap.md index 653f517..bbfbb37 100644 --- a/docs/bootstrap.md +++ b/docs/bootstrap.md @@ -1,7 +1,7 @@ # Bootstrap de uma configuração completa Este documento tem como objetivo descrever o **processo de bootstrap** de uma -configuração completa de um servidor utilizando o [Padrão Saravá](/). O +configuração completa de um servidor utilizando o [Padrão Fluxo](index.md). O *processo de bootstrap* pode ser compreendido como "o processo de coordenar diversos processos interdepententes de forma que seja atingida uma configuração sistêmica estável". @@ -11,8 +11,8 @@ Para este processo, utilizaremos as seguintes ferramentas: * [Debian GNU/Linux 6.0](http://www.debian.org/releases/squeeze/). * [Linux-VServer](http://linux-vserver.org/) ([pacote do debian](http://packages.debian.org/squeeze/linux-image-2.6-vserver-686)). * [Git](http://git-scm.com/) e [gitosis](http://swik.net/gitosis). -* [puppet-bootstrap](http://git.sarava.org/?p=puppet-bootstrap.git;a=summary). -* [hydra](http://git.sarava.org/?p=hydra.git;a=summary). +* [puppet-bootstrap](http://git.fluxo.info/puppet-bootstrap). +* [hydra](http://git.fluxo.info/hydra). Os seguintes estágios fazem parte de uma instalação padrão completa: @@ -39,7 +39,7 @@ Configure o arquivo `/etc/hosts` (a ordem dos hostnames influencia nos resultado Instale o git e o puppet e clone o repositório `puppet-bootstrap`: apt-get -y install git-core puppet wipe - git clone git://git.sarava.org/puppet-bootstrap ${puppet_bootstrap_dir} + git clone git://git.fluxo.info/puppet-bootstrap ${puppet_bootstrap_dir} Altere o arquivo `${puppet_bootstrap_dir}/manifests/config.pp` de acordo com suas necessidades. @@ -151,11 +151,11 @@ Instale `hydra` e `keyringer`: sudo apt-get -y install git-core # hydra - sudo git clone git://git.sarava.org/hydra /usr/local/hydra + sudo git clone git://git.fluxo.info/hydra /usr/local/hydra sudo ln -sf /usr/local/hydra/hydra /usr/local/sbin/hydra sudo ln -sf /usr/local/hydra/hydra /usr/local/sbin/hydractl # keyringer - sudo git clone git://git.sarava.org/keyringer /usr/local/keyringer + sudo git clone git://git.fluxo.info/keyringer /usr/local/keyringer sudo ln -sf /usr/local/keyringer/keyringer /usr/local/bin/keyringer Tenha certeza que possui em seu chaveiro gpg as chaves dos usuários que irão @@ -181,7 +181,6 @@ Gere novas chaves para os nós configurados e as envie para os nós: hydra projeto newkeys hydra projeto import servidor.pub - ## Partida do puppetmaster /etc/init.d/puppetmaster start @@ -212,15 +211,16 @@ Gere novas chaves para os nós configurados e as envie para os nós: git init git add . - repos="`lynx -dump http://git.sarava.org/?a=project_index | awk '{ print $1 }' | grep ^puppet-`" + repos="`lynx -dump http://gitweb.fluxo.info/?a=project_index | awk '{ print $1 }' | grep ^puppet-`" + for repo in $repos; do module="`basename $repo .git | sed -e s/^puppet-//`" if [ ! -d "modules/$module" ]; then - git submodule add git://git.sarava.org/puppet-$module.git modules/$module + git submodule add git://git.fluxo.info/puppet-$module.git modules/$module fi done -No caso de bootstrap para um novo projeto, substitua as referências de `git.sarava.org` para `git.projeto.org`. +No caso de bootstrap para um novo projeto, substitua as referências de `git.fluxo.info` para `git.projeto.org`. ### Configurando referências remotas em massa diff --git a/docs/boxes.md b/docs/boxes.md index dcd7550..4154695 100644 --- a/docs/boxes.md +++ b/docs/boxes.md @@ -38,7 +38,7 @@ com isto no `/root/.profile`: Você já pode parar por aí pois já tem uma máquina bem genérica ou começar a customizar a máquina para ter ferramentas e configurações comuns para o seu dia dia. -Por exemplo, considere a [instalação](/install) da Hydra Suite na máquina virtual. +Por exemplo, considere a [instalação](install.md) da Hydra Suite na máquina virtual. ## Encolhendo uma máquina virtual diff --git a/docs/certs.md b/docs/certs.md index 9fc1a04..87f1b78 100644 --- a/docs/certs.md +++ b/docs/certs.md @@ -2,7 +2,7 @@ ## Começando -Proceda com a [configuração do ambiente de trabalho administrativo](/install). +Proceda com a [configuração do ambiente de trabalho administrativo](install.md). ## Gerando novas chaves diff --git a/docs/cryptocalypse.md b/docs/cryptocalypse.md index 2e97969..1dc19f8 100644 --- a/docs/cryptocalypse.md +++ b/docs/cryptocalypse.md @@ -4,7 +4,7 @@ Procedimento emergencial de rotação de chaves. Ou, como sobreviver a brechas d ## Começando -Proceda com a [configuração do ambiente de trabalho administrativo](/install). +Proceda com a [configuração do ambiente de trabalho administrativo](install.md). ## Atualizando @@ -27,11 +27,11 @@ Para cada nodo usado no git público: ## Chaves do Puppet -[Reset da infra de CA do puppet](certs/puppet). +[Reset da infra de CA do puppet](bootstrap.md). ## Certificados SSL -[Gere novos certificados SSL](certs). +[Gere novos certificados SSL](certs.md). ## Chaves SSH dos ikiwikis diff --git a/docs/domains.md b/docs/domains.md index aeaea1d..bc37ec8 100644 --- a/docs/domains.md +++ b/docs/domains.md @@ -2,11 +2,11 @@ ## Começando -Proceda com a [configuração do ambiente de trabalho administrativo](/install). +Proceda com a [configuração do ambiente de trabalho administrativo](install.md). ## Checando expiração em massa -Necessita o script [domain-check](https://git.sarava.org/?p=puppet-domain_check.git): +Necessita o script [domain-check](https://git.fluxo.info/puppet-domain_check): cd $FOLDER/puppet/modules/site_nginx/files diff --git a/docs/firewall.md b/docs/firewall.md index 37621ea..66a1e40 100644 --- a/docs/firewall.md +++ b/docs/firewall.md @@ -1,4 +1,20 @@ -# Configuração do shorewall +# Configuração do shorewall + +## Introdução + +Este é um roteiro emergencial para a cofiguração manual de firewall, +para situações em que não haja configuração automatizada já disponível. + +Uma vez que o [bootstrap](bootstrap.md) estiver concluído, os módulos +[puppet-firewall](https://git.fluxo.info/puppet-firewall) e +[puppet-shorewall](http://git.fluxo.info/puppet-shorewall) e poderão ser +utilizados para gerenciar o firewall. + +No entanto, se você for substituir o presente procedimento pela sua versão +automatizada, certifique-se de apagar os arquivos +`/etc/shorewall/{masq,policy,zones,rules,interfaces}`. + +## Procedimento De início, instale o shorewall: @@ -70,11 +86,3 @@ Habilite o shorewall mudando o valor de startup de `/etc/default/shorewall` para Finalmente podemos ligar o shorewall: /etc/init.d/shorewall start - -## Shorewall e Puppet - -Uma vez que um nodo [puppetmaster](../puppet) estiver rodando, o módulo -[puppet-shorewall](http://git.sarava.org/?p=puppet-shorewall.git;a=summary) -poderá ser utilizado para gerenciar o firewall. No entanto, se você for -substituir o presente procedimento pela sua versão via puppet, certifique-se de -apagar os arquivos `/etc/shorewall/{masq,policy,zones,rules,interfaces}`. diff --git a/docs/index.md b/docs/index.md index 4c18930..22f2785 100644 --- a/docs/index.md +++ b/docs/index.md @@ -1,8 +1,8 @@ # Padrão Fluxo O Padrão Fluxo é uma sistematização de configuração de servidores, -gerenciadores de conteúdo e aplicações diversas usados pelo Grupo Fluxo. O -padrão foi desenvolvido para: +gerenciadores de conteúdo e aplicações diversas usados pela Iniciativa Fluxo. O +padrão foi concebido para: * Ter controle dos pacotes utilizados, arquivos de configuração e serviços em uso. @@ -10,20 +10,24 @@ padrão foi desenvolvido para: * Sistema de gerenciamento de backups comum para que as máquinas de um projeto possam trocar dados. * Que um servidor seja configurado apenas uma vez e que suas configurações - possam ser aproveitados para outras máquinas. + possam ser aproveitadas para outras máquinas. * Que sites e serviços sejam armazenados de maneira regular para facilitar atualizações e migrações. * Manter projetos e serviços isolados uns dos outros através de servidores virtuais. * Tornar a instalação dos servidores facilmente replicável. +Originalmente [Padrão Saravá][], agora padrão em [fluxo][]. + +[Padrão Saravá]: https://web.archive.org/web/20150525110557/https://padrao.sarava.org/ +[fluxo]: https://fluxo.info + ### Licença -O Padrão Fluxo é distribuído conforme a [GNU Affero General Public -License](http://www.gnu.org/licenses/agpl-3.0.html): +O Padrão Fluxo é distribuído conforme a [GNU Affero General Public License][]: Fluxo Pattern - Copyright (C) 2015 Fluxo Group + Copyright (C) 2015-2025 Fluxo Initiative Copyright (C) 2009-2015 Sarava Group This program is free software: you can redistribute it and/or modify @@ -38,3 +42,5 @@ License](http://www.gnu.org/licenses/agpl-3.0.html): You should have received a copy of the GNU Affero General Public License along with this program. If not, see <http://www.gnu.org/licenses/>. + +[GNU Affero General Public License]: http://www.gnu.org/licenses/agpl-3.0.html diff --git a/docs/install.md b/docs/install.md index 508649a..8587467 100644 --- a/docs/install.md +++ b/docs/install.md @@ -1,16 +1,15 @@ # Instalação da Hydra Suite -Atualmente o Padrão Saravá utiliza a [Hydra -Suite](http://git.sarava.org/?p=hydra.git;a=summary) para fazer o -provisionamento. Versões anteriores deste documento não o utilizam, são mais -descritivas e talvez até mais interessantes ao público interessado nos -pormenores do procedimento de instalação. +Atualmente o Padrão Saravá utiliza a [Hydra Suite](http://git.fluxo.info/hydra) +para fazer o provisionamento. Versões anteriores deste documento não o +utilizam, são mais descritivas e talvez até mais interessantes ao público +interessado nos pormenores do procedimento de instalação. A Hydra Suite pode ser obtida e instalada diretamente do seu repositório: - git clone --recursive git://git.sarava.org/hydra.git + git clone --recursive git://git.fluxo.info/hydra.git -Verifique a [integridade do código](https://manual.sarava.org/specs/code/): +Verifique a [integridade do código](https://plano.autodefesa.org/specs/code.html): cd hydra tag="`git describe --abbrev=0 --tags`" diff --git a/docs/keys.md b/docs/keys.md index 09ee5d3..41c77b8 100644 --- a/docs/keys.md +++ b/docs/keys.md @@ -9,16 +9,16 @@ A maior parte dos procedimentos a seguir depende do aplicativo Suite](http://git.fluxo.info/?p=hydra.git;a=summary) e de uma configuração do tipo -Proceda então com a [configuração do ambiente de trabalho administrativo](/install). +Proceda então com a [configuração do ambiente de trabalho administrativo](install.md). ### Inicializando um repositório # Inicializando keyringer $HYDRA init $FOLDER/conf/keyring -### Gerando chaves https +### Gerando chaves HTTPS -Gerar chaves e certificados SSL auto-assinados é simples: +Gerar chaves e certificados TLS/SSL auto-assinados é simples: # Gerando chaves para https keyringer $HYDRA genpair ssl-self ssl/$DOMAIN $DOMAIN @@ -141,7 +141,23 @@ Hashes para `htpasswd` são descritos [aqui](http://sarava.fluxo.info/Ajuda/Prot ## Chave OpenPGP de Coletivo -Vide [Chave OpenPGP de Coletivo](role). +Vide [Chave OpenPGP de Coletivo](keys/role.md). + +## Cerbot + +O [Certbot][] permite a gestão automatizada de certificados TLS/SSL. + +Ele possui uma [extensa documentação][certbot-docs], e aqui serão indicados +apenas alguns procedimentos específicos. + +### Removendo certificados + +Para remover um certficado antigo, use: + + certbot delete --cert-name $DOMAIN + +[Certbot]: https://certbot.eff.org/ +[certbot-docs]: https://eff-certbot.readthedocs.io/ ## Referências diff --git a/docs/nodo.md b/docs/nodo.md index 77bbd85..db1bf5a 100644 --- a/docs/nodo.md +++ b/docs/nodo.md @@ -40,13 +40,13 @@ Esta consiste na criação do nodo -- máquina virtual ou servidor físico, pode ser feita de dois modos: * Via puppet na própria infraestrutura da `$hydra`. - * No caso de um servidor físico, proceda [apropriadamente](/install). + * No caso de um servidor físico, proceda [apropriadamente](install.md). * No caso de uma máquina virtual, defina-a no manifest do puppet da máquina hospedeira usando o padrão de virtualização desejado. * Solicitando a um coletivo hospedeiro altamente confiável. No caso de uma máquina virtual hospedada numa máquina física do grupo, -considere a [faixa de alocação](allocation) de IPS. +considere a [faixa de alocação](nodo/allocation.md) de IPS. ### Definição do nodo diff --git a/docs/nodo/allocation.md b/docs/nodo/allocation.md index ff4c368..314a63f 100644 --- a/docs/nodo/allocation.md +++ b/docs/nodo/allocation.md @@ -38,4 +38,4 @@ Ou seja, * Sempre que houvesse uma máquina virtual do grupo Y numa maquina, seria sempre no contexto 42, IP interno 192.168.0.42, porta 2242. * Já o nome da máquina virtual mudaria sempre, eventualmente seguindo o padrao - do [puppet-bootstrap](https://git.sarava.org/?p=puppet-bootstrap.git). + do [puppet-bootstrap](https://git.fluxo.info/puppet-bootstrap). diff --git a/docs/provision.md b/docs/provision.md index 228452d..9b899a2 100644 --- a/docs/provision.md +++ b/docs/provision.md @@ -6,7 +6,7 @@ USB. ## Instalação -Após a [instalação da Hydra Suite](/install), basta iniciar o procedimento com +Após a [instalação da Hydra Suite](install.md), basta iniciar o procedimento com os devidos privilégios administrativos (como `root` ou usando o `sudo`): hydractl provision @@ -15,7 +15,61 @@ theme: # # This option was superseded by the privacy plugin: # https://squidfunk.github.io/mkdocs-material/setup/ensuring-data-privacy/#built-in-privacy-plugin - font: false + #font: false + +# Plugins +# https://www.mkdocs.org/dev-guide/plugins/ +plugins: + # Note that this might not be available in the mkdocs-material package from + # Debian bookworm (as of 2024-08-23) + privacy: {} + +# Markdown extensions +# See https://www.mkdocs.org/user-guide/configuration/#markdown_extensions +# https://squidfunk.github.io/mkdocs-material/setup/extensions/ +markdown_extensions: + # Footnotes + # https://squidfunk.github.io/mkdocs-material/reference/footnotes/ + footnotes: {} + + # Tasklist handling + # https://squidfunk.github.io/mkdocs-material/setup/extensions/python-markdown-extensions/#tasklist + pymdownx.tasklist: + custom_checkbox: true + + # SuperFences + # https://squidfunk.github.io/mkdocs-material/setup/extensions/python-markdown-extensions/#superfences + pymdownx.superfences: + custom_fences: + - name: mermaid + class: mermaid + format: !!python/name:pymdownx.superfences.fence_code_format + + # Table of Contents configuration + # See https://www.mkdocs.org/user-guide/configuration/#markdown_extensions + # https://www.mkdocs.org/user-guide/writing-your-docs/#linking-to-pages + toc: + permalink: true + + # Attribute Lists + # Needed by proper image handling + # https://squidfunk.github.io/mkdocs-material/reference/images/ + # https://squidfunk.github.io/mkdocs-material/setup/extensions/python-markdown/#attribute-lists + attr_list: {} + + # Markdown in HTML + # Needed by proper image handling + # https://squidfunk.github.io/mkdocs-material/reference/images/ + # https://squidfunk.github.io/mkdocs-material/setup/extensions/python-markdown/#markdown-in-html + md_in_html: {} + +# Copyright notice +copyright: Copyleft © 2024 Fluxo Group. See LICENSE for details. + +# Extra template parameters +# https://www.mkdocs.org/user-guide/configuration/#extra +extra: + generator: false # Navigation # https://www.mkdocs.org/user-guide/writing-your-docs/#configure-pages-and-navigation |
