Home > Uncategorized > Subversion com Apache+SSL+BasicAuth no Ubuntu Server 8.04

Subversion com Apache+SSL+BasicAuth no Ubuntu Server 8.04

Surgiu a necessidade de implementar o Subversion num cliente, após algumas pesquisas encontrei um excelente post sobre o assunto, foi preciso fazer alguns ajustes para aparar algumas arestas mas ficou excelente.

Segue o passo a passo desta solução:

Instale os pacotes necessários

sudo aptitude install subversion libapache2-svn apache2 ssl-cert

Habilitando o SSl no Apache2

Crie o certificado

sudo mkdir /etc/apache2/ssl

sudo /usr/sbin/make-ssl-cert /usr/share/ssl-cert/ssleay.cnf /etc/apache2/ssl/apache.pem

Defina a permissão para o arquivo criado

chmod 600 /etc/apache2/apache.pem

Edite o arquivo /etc/apache2/ports.conf e adicione a seguinte linha se ela não existir:

Listen 443

Habilite o suporte a SSL no apache2 da seguinte forma:

a2enmod ssl

Crie o Virtual Host:

sudo cp /etc/apache2/sites-available/default /etc/apache2/sites-available/svn

sudo vim /etc/apache2/sites-available/svn

Mude os seguintes itens:

NameVirtualHost *:443

VirtualHost *:443 #Veja a OBS abaixo

Adicione as seguintes linhas:
SSLEngine on
ServerSignature On
SSLCertificateFile /etc/apache2/apache.pem

#OBS:Esta linha esta entre os sinais “maior que e menor que”, O WordPress não sei porque carga d’águas apaga tudo que contém “maior que e menor que”.

Habilite o site e reinicie o apache2:

sudo a2ensite svn
sudo apache2ctl

Adicione os respositórios:

sudo mkdir /var/svn
sudo svnadmin create /var/svn/teste
sudo chown -R www-data:www-data /var/svn/teste
sudo chmod -R g+ws /var/svn/teste

Habilite a autenticação no Apache2

sudo htpasswd2 -c -m /etc/apache2/dav_svn.passwd admin

Habilite e configure o WebDAV e o SVN

sudo vim /etc/apache2/mods-available/dav_svn.conf

Descomente as seguintes linhas

DAV svn
SVNParentPath /var/svn
AuthType Basic
AuthName “Subversion Repository”
AuthUserFile /etc/apache2/dav_svn.passwd
Require valid-user
SSLRequireSSL

Reinicie o Apache2

sudo apache2ctl restart

Agora chegou a hora de testarmos nosso servidor

No navegador digite:

https://ip_do_servidor/svn/teste

Se estiver tudo OK deverá surgir um link para o diretório do repositório

Na console digite:

touch teste.txt

svn import –username admin teste.txt https://ip_do_servidor/svn/teste/testdir -m “Testing

depois digite:

svn co –username admin https://ip_do_servidor/svn/teste

Se os usuários deste serviço usarem Windows(tm) como S.O. recomendo a instalação do TortoiseSVN

  1. Leandro Hamid
    09/26/2008 at 10:42 AM

    Bom dia.

    Meus parabéns pelo post, eu gostaria de saber o que posso fazer para testar este servidor?

  2. 09/26/2008 at 11:09 AM

    Olá Leonardo,

    Leia o final do post têm os comandos para teste incluido teste pelo navegador

    “No navegador digite:

    https://ip_do_servidor/svn/teste

    Se estiver tudo OK deverá surgir um link para o diretório do repositório

    Na console digite:

    touch teste.txt

    svn import –username admin teste.txt https://ip_do_servidor/svn/teste/testdir -m “Testing

    depois digite:

    svn co –username admin https://ip_do_servidor/svn/teste

  3. George
    09/26/2008 at 11:13 AM

    Muito Bom !

    Estava procurando um tutorial assim ! Como não havia achado ainda, resolvi instalar o VisualSVN com windows, agora já posso voltar p. linux.

  4. Eulino
    09/26/2008 at 3:19 PM

    Ficou muito show.
    Parabéns!

    Mas eu preciso de sua ajuda!
    Eu só recebi esta mensagem.

    “Forbidden

    You don’t have permission to access /svn/ on this server.”

    O que você acha que pode estar provocando esse problema de negação de acesso?

  5. Nuno
    10/13/2008 at 1:04 PM

    Boas,

    este tutorial está demais… só que não consigo sincronizar dados com o Tortoise… acedo por www À pasta teste, mas não vejo lá mais nada…

    O Acesso svn+ssh está dando sempre erro… alguma ajuda?

    [[]] NUNO

  6. 12/06/2008 at 12:41 AM

    Olá, muito obrigado pelo tutorial.

    Mas tive problemas testando no Ubuntu Hardy Heron e no Intrepid Ibex.
    O erro ocorre quando vou testar:
    https://ip_do_servidor/svn/teste

    O Firefox me exibe a seguinte mensagem:

    Falha na conexão segura
    localhost usa um certificado de segurança inválido.
    O certificado não é considerado confiável porque é auto-assinado.
    (Código do erro: sec_error_ca_cert_invalid)

    Pode me ajudar com isto? Obrigado!

  7. 07/04/2014 at 2:39 AM

    What’s up, just wanted to say, I loved this blog post.
    It was helpful. Keep on posting!

  1. 04/06/2009 at 1:55 AM
  2. 09/09/2009 at 12:24 PM
  3. 10/14/2009 at 6:04 PM

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: