Mudanças entre as edições de "Roteiro de Instalação do Apache e SVN com autenticação NIS"

De LCAD
Ir para: navegação, pesquisa
(Criou página com '=Objetivo desse roteiro= Este é um roteiro de como configurar um nó LCAD para logar com o NIS e montar a conta automaticamente com o autofs. =Configurando o NIS= Execute o ...')
 
(Configurando o Apache (htttpd))
 
(19 revisões intermediárias pelo mesmo usuário não estão sendo mostradas)
Linha 1: Linha 1:
 
=Objetivo desse roteiro=
 
=Objetivo desse roteiro=
Este é um roteiro de como configurar um nó LCAD para logar com o NIS e montar a conta automaticamente com o autofs.
+
[[category:Configuração]]
 +
Este é um roteiro de como instalar o Apache (httpd), Mysql (mysqld) e Subversion com autenticação NIS para a LCAD 2 no LCAD.
  
=Configurando o NIS=
+
=Instalando os pacotes=
 +
Instale os pacotes necessários com o comando:
 +
# yum install httpd php php-common mod_dav_svn subversion php-pecl-apc php-cli php-pear php-pdo php-mysql php-pgsql \
 +
php-pecl-mongo php-sqlite php-pecl-memcache php-pecl-memcached php-gd php-mbstring php-mcrypt php-xml mysql mysql-server \
 +
mysql-workbench perl-ExtUtils-AutoInstall
 +
 
 +
Após instalar todos vamos configurar o Mysql
 +
 
 +
=Configurando o Mysql=
 +
Execute na linha de comando:
 +
# systemctl start mysqld.service
 +
# systemctl enable mysqld.service
 +
 
 +
Logo após digite:
 +
# mysql -u root -p
 +
 
 +
Entre com a nova senha de root.
 +
 
 +
=Configurando o Apache (htttpd)=
 +
Edite o arquivo ''/etc/httpd/conf/httpd.conf''
 +
# vim /etc/httpd/conf/htttpd.conf
 +
 
 +
Na linha 261 que contém ServerAdmin, coloque:
 +
ServerAdmin suporte@lcad.inf.ufes.br
 +
 
 +
Na linha 275 que contém ServerName, coloque:
 +
ServerName www.lcad.inf.ufes.br
 +
 
 +
Na linha 365 que contém Userdir disabled, coloque:
 +
Userdir enabled
 +
 
 +
Descomente a linha 372, ficando assim:
 +
UserDir public_html
 +
 
 +
Apague as linhas de 380 até 391 e coloque:
 +
<Directory /home/*/public_html>
 +
    AllowOverride All
 +
    Options MultiViews Indexes +FollowSymLinks Includes
 +
    <Limit GET POST OPTIONS>
 +
        Order allow,deny
 +
        Allow from all
 +
    </Limit>
 +
    <LimitExcept GET POST OPTIONS>
 +
        Order deny,allow
 +
        Deny from all
 +
    </LimitExcept>
 +
</Directory>
 +
 
 +
Na linha 401, adicione index.php, ficando assim:
 +
DirectoryIndex index.php index.html index.html.var
 +
 
 +
Ao final do arquivo adicione para o log:
 +
#Alias for the log files
 +
Alias /log /log
 +
 +
<Direcotory /log>
 +
          Options +Indexes
 +
          IndexIgnore *.html lost+found
 +
          DirectoryIndex disabled
 +
</Directory>
 +
 +
php_flag display_startup_erros off
 +
php_flag display_errors off
 +
php_flag html_errors off
 +
 
 +
Agora vamos iniciar o Apache e permitir sua inicialização automática:
 +
# systemctl start httpd.service
 +
# systemctl enable httpd.service
 +
 
 +
=Configurando o Subversion=
 +
Baixe o arquivo [[http://search.cpan.org/CPAN/authors/id/E/ES/ESM/Net-NIS-0.43.tar.gz Net-NIS]].
 +
Instale usando os comandos:
 +
# tar xzf Net-NIS-0.34.tar.gz
 +
# cd Net-NIS-0.34/
 +
# perl Makefile.PL
 +
# make
 +
# make install
 +
 
 +
Baixe o arquivo [[http://search.cpan.org/CPAN/authors/id/I/IT/ITEAHAUS/Apache2-AuthenNIS-0.15.tar.gz Apache2-AuthenNIS]].
 +
Instale usando os comandos:
 +
# tar xzf Apache2-AuthenNIS-0.15.tar.gz
 +
# cd Apache2-AuthenNIS-0.15
 +
# perl Makefile.PL
 +
# make
 +
# make install
 +
 
 +
Crie o arquivo ''/etc/httpd/conf.d/subversion.conf'' e coloque o conteúdo:
 +
 
 +
LoadModule dav_svn_module    modules/mod_dav_svn.so
 +
LoadModule authz_svn_module  modules/mod_authz_svn.so
 +
#PerlLoadModule Apache::AuthenNIS
 +
#
 +
# Example configuration to enable HTTP access for a directory
 +
# containing Subversion repositories, "/var/www/svn".  Each repository
 +
# must be both:
 +
#
 +
#  a) readable and writable by the 'apache' user, and
 +
#
 +
#  b) labelled with the 'httpd_sys_content_t' context if using
 +
#  SELinux
 +
#
 +
 +
#
 +
# To create a new repository "http://localhost/repos/stuff" using
 +
# this configuration, run as root:
 +
#
 +
#  # cd /var/www/svn
 +
#  # svnadmin create stuff 
 +
#  # chown -R apache.apache stuff
 +
#  # chcon -R -t httpd_sys_content_t stuff
 +
#
 +
 +
<Location /svn>
 +
        Order allow,deny
 +
        Deny from all
 +
        DAV svn
 +
        SVNParentPath /var/www/svn/
 +
        AuthName "LCAD Subversion repository"
 +
        AuthType Basic
 +
        Satisfy any
 +
        PerlAuthenHandler Apache2::AuthenNIS
 +
        PerlSetVar AllowAlternateAuth no
 +
        #PerlAuthzHandler Apache::AuthzNIS
 +
        Require valid-user
 +
        AuthzSVNAccessFile /var/www/svn/accessvn
 +
</Location>
 +
 
 +
=Importando o banco de dados=
 +
Para realizar a importação do banco de dados realize os seguintes passos:
 +
 
 +
Faça um dump de todas as bases usando:
 +
# mysqldump -u root -p -x -e -A > ~/backup.sql
 +
 
 +
Digite a senha e aguarde a finalização do backup.
 +
 
 +
Logo após transfira esse arquivo para a máquina através do SCP:
 +
# scp -Cr 10.50.2.102:/root/backup.sql ~
 +
 
 +
Lembrando que 10.50.2.102 é a LCAD 2, caso esteja em outra máquina mude para essa máquina.
 +
 
 +
Feito a cópia vamos a importação.
 
Execute o comando:
 
Execute o comando:
  # authconfig-gtk
+
  # mysql -u root -p < backup.sql
 +
 
 +
Lembrando que a exportação e importação do banco de dados pode ser feita pelo mysql-workbench, para maiores informações busque no site do Mysql [[http://www.mysql.com/products/workbench/ aqui]]
 +
 
 +
=Colocando os arquivos no /var/www/html/=
 +
Para copiar os arquivos para o /var/www/html, pasta que fica o site e wiki, dentre outros execute:
 +
# scp -Cr 10.50.2.102:/var/www/html /var/www/html
 +
 
 +
Lembrando que 10.50.2.102 é a LCAD 2, caso não seja, utilize o outro IP.
 +
 
 +
 
 +
=Colocando o hd do log=
 +
Desligue a máquina e coloque o HD nela.
 +
 
 +
Ligue-a e edite o arquivo ''/etc/fstab'' e adicione na última linha:
 +
/dev/sdb                                /log                        ext4    defaults        0 3
 +
 
 +
Reinicie a máquina e verifique se está funcionando acessando nela http://localhost/log
  
Digite a senha de root.
+
=Importando o SVN=
 +
Crie a pasta ''/var/www/svn''
 +
# mkdir /var/www/svn
  
Na janela que abrir coloque as informações:
+
Antes de fazer importação copie os arquivos ''accessvn e passwdsvn''
 +
# scp -Cr 10.50.2.102:/var/www/svn/accessvn /var/www/svn/accessvn
 +
# scp -Cr 10.50.2.102:/var/www/svn/passwdsvn /var/www/svn/passwdsvn
  
User Account Database: NIS
+
Logue na LCAD 2:
  NIS Domain : lcad
+
  # ssh root@10.50.2.102
NIS Server: 10.50.2.254
 
Authentication Method : NIS password
 
  
Na próxima aba, Advanced Options marque:
+
Irei usar como conversão repo como o repositório que você for utilizar para trabalhar.
  
  Password Hashing Algorithm: MD5
+
Para fazer um dump de um repositório svn use:
  Marque a opção: Create home directories on the first login
+
  # cd /var/www/svn
 +
  # svnadmin dump repo > repo.dump
  
=Configurando o autofs=
+
Copie-o através do scp:
Instale o autofs:
+
  # scp -Cr 10.50.2.102:/var/www/svn/repo.dupm /var/www/svn/repo.dump
  # yum install autofs
 
  
Edite o arquivo ''/etc/auto.master'' e adicione ao final:
+
Execute os passos:
  /home /etc/auto.home
+
  # cd /var/www/svn
 +
# svnadmin create repo
 +
# chown -R apache.apache repo
  
Crie o arquivo ''/etc/auto.home'' e coloque:
+
Restaure o backup:
  * -rw 10.50.2.254:/export/home/&
+
  # svnadmin load repo < repo.dump
  
Reinicie o computador.
+
Feito todos esses ajustes reinicie o computador.
  
 
=Caso algo de errado=
 
=Caso algo de errado=
 
Procure na internet, especialmente:
 
Procure na internet, especialmente:
:*
+
:*[[http://www.mysql.com Mysql]]
:*www.apache.org
+
:*[[http://www.subversion.com SubVersion]]
 +
:*[[http://www.yolinux.com YoLinux]]
 +
:*[[http://www.apache.org Apache]]

Edição atual tal como às 16h47min de 17 de setembro de 2012

Objetivo desse roteiro

Este é um roteiro de como instalar o Apache (httpd), Mysql (mysqld) e Subversion com autenticação NIS para a LCAD 2 no LCAD.

Instalando os pacotes

Instale os pacotes necessários com o comando:

# yum install httpd php php-common mod_dav_svn subversion php-pecl-apc php-cli php-pear php-pdo php-mysql php-pgsql \
php-pecl-mongo php-sqlite php-pecl-memcache php-pecl-memcached php-gd php-mbstring php-mcrypt php-xml mysql mysql-server \
mysql-workbench perl-ExtUtils-AutoInstall

Após instalar todos vamos configurar o Mysql

Configurando o Mysql

Execute na linha de comando:

# systemctl start mysqld.service
# systemctl enable mysqld.service

Logo após digite:

# mysql -u root -p

Entre com a nova senha de root.

Configurando o Apache (htttpd)

Edite o arquivo /etc/httpd/conf/httpd.conf

# vim /etc/httpd/conf/htttpd.conf

Na linha 261 que contém ServerAdmin, coloque:

ServerAdmin suporte@lcad.inf.ufes.br

Na linha 275 que contém ServerName, coloque:

ServerName www.lcad.inf.ufes.br

Na linha 365 que contém Userdir disabled, coloque:

Userdir enabled

Descomente a linha 372, ficando assim:

UserDir public_html

Apague as linhas de 380 até 391 e coloque:

<Directory /home/*/public_html>
    AllowOverride All
    Options MultiViews Indexes +FollowSymLinks Includes
    <Limit GET POST OPTIONS>
        Order allow,deny
        Allow from all
    </Limit>
    <LimitExcept GET POST OPTIONS>
        Order deny,allow
        Deny from all
    </LimitExcept>
</Directory>

Na linha 401, adicione index.php, ficando assim:

DirectoryIndex index.php index.html index.html.var

Ao final do arquivo adicione para o log:

#Alias for the log files
Alias /log /log

<Direcotory /log>
         Options +Indexes
         IndexIgnore *.html lost+found
         DirectoryIndex disabled
</Directory>

php_flag display_startup_erros off
php_flag display_errors off
php_flag html_errors off

Agora vamos iniciar o Apache e permitir sua inicialização automática:

# systemctl start httpd.service
# systemctl enable httpd.service

Configurando o Subversion

Baixe o arquivo [Net-NIS]. Instale usando os comandos:

# tar xzf Net-NIS-0.34.tar.gz
# cd Net-NIS-0.34/
# perl Makefile.PL
# make
# make install

Baixe o arquivo [Apache2-AuthenNIS]. Instale usando os comandos:

# tar xzf Apache2-AuthenNIS-0.15.tar.gz
# cd Apache2-AuthenNIS-0.15
# perl Makefile.PL
# make
# make install

Crie o arquivo /etc/httpd/conf.d/subversion.conf e coloque o conteúdo:

LoadModule dav_svn_module     modules/mod_dav_svn.so
LoadModule authz_svn_module   modules/mod_authz_svn.so
#PerlLoadModule Apache::AuthenNIS
#
# Example configuration to enable HTTP access for a directory
# containing Subversion repositories, "/var/www/svn".  Each repository
# must be both:
#
#   a) readable and writable by the 'apache' user, and
#
#   b) labelled with the 'httpd_sys_content_t' context if using
#   SELinux
#

#
# To create a new repository "http://localhost/repos/stuff" using
# this configuration, run as root:
#
#   # cd /var/www/svn
#   # svnadmin create stuff   
#   # chown -R apache.apache stuff
#   # chcon -R -t httpd_sys_content_t stuff
#

<Location /svn>
       Order allow,deny
       Deny from all
       DAV svn
       SVNParentPath /var/www/svn/
       AuthName "LCAD Subversion repository"
       AuthType Basic
       Satisfy any
       PerlAuthenHandler Apache2::AuthenNIS
       PerlSetVar AllowAlternateAuth no
       #PerlAuthzHandler Apache::AuthzNIS
       Require valid-user
       AuthzSVNAccessFile /var/www/svn/accessvn
</Location>

Importando o banco de dados

Para realizar a importação do banco de dados realize os seguintes passos:

Faça um dump de todas as bases usando:

# mysqldump -u root -p -x -e -A > ~/backup.sql

Digite a senha e aguarde a finalização do backup.

Logo após transfira esse arquivo para a máquina através do SCP:

# scp -Cr 10.50.2.102:/root/backup.sql ~

Lembrando que 10.50.2.102 é a LCAD 2, caso esteja em outra máquina mude para essa máquina.

Feito a cópia vamos a importação. Execute o comando:

# mysql -u root -p < backup.sql

Lembrando que a exportação e importação do banco de dados pode ser feita pelo mysql-workbench, para maiores informações busque no site do Mysql [aqui]

Colocando os arquivos no /var/www/html/

Para copiar os arquivos para o /var/www/html, pasta que fica o site e wiki, dentre outros execute:

# scp -Cr 10.50.2.102:/var/www/html /var/www/html

Lembrando que 10.50.2.102 é a LCAD 2, caso não seja, utilize o outro IP.


Colocando o hd do log

Desligue a máquina e coloque o HD nela.

Ligue-a e edite o arquivo /etc/fstab e adicione na última linha:

/dev/sdb                                 /log                        ext4    defaults        0 3

Reinicie a máquina e verifique se está funcionando acessando nela http://localhost/log

Importando o SVN

Crie a pasta /var/www/svn

# mkdir /var/www/svn

Antes de fazer importação copie os arquivos accessvn e passwdsvn

# scp -Cr 10.50.2.102:/var/www/svn/accessvn /var/www/svn/accessvn
# scp -Cr 10.50.2.102:/var/www/svn/passwdsvn /var/www/svn/passwdsvn

Logue na LCAD 2:

# ssh root@10.50.2.102

Irei usar como conversão repo como o repositório que você for utilizar para trabalhar.

Para fazer um dump de um repositório svn use:

# cd /var/www/svn
# svnadmin dump repo > repo.dump

Copie-o através do scp:

# scp -Cr 10.50.2.102:/var/www/svn/repo.dupm /var/www/svn/repo.dump

Execute os passos:

# cd /var/www/svn
# svnadmin create repo
# chown -R apache.apache repo

Restaure o backup:

# svnadmin load repo < repo.dump

Feito todos esses ajustes reinicie o computador.

Caso algo de errado

Procure na internet, especialmente: