| Para a maioria dos casos a autenticação básica do Apache atende perfeitamente e é bastante fácil de entender e configurar. Um aplicativo do Apache, o htpasswd pode ser usado para incluir usuários e as respeitivas senhas de cada um. Supondo de que o diretório que queremos proteger e permitir o acesso somente para usuários habilitados é o seguinte: /srv/www/htdocs/msn-proxydevemos gerar o arquivo .htpasswd na primeira execução assim: # htpasswd -c /srv/www/.htpasswd NomeDoUsuarioo programa responde: New password:e você digite então duas vezes a senha desejada e em seguida a resposta é: Adding password for user suporteAgora que existe o arquivo de usuários executamos somente # htpasswd /srv/www/.htpasswd NovoUsuarioou seja sem o parametro "-c" para adicionar usuários ou trocar a senha de existentes. Observe também de que o arquivo de senhas ficou num lugar fora dos arquivos html para que fique mais seguro. Ainda para mais segurança devemos ajustar as permissões para o arquivo. Supondo de que o usuário e grupo que rege o Apache é www/www executamos os seguintes comandos: chown www:www /srv/www/.htpasswdAgora que temos o arquivo de usuários e senhas precisamos configurar o Apache para que use ele. Para isso basta alterar o arquivo /etc/apache2/httpd.conf <Directory /srv/www/htdocsmsn-proxy/>Resta agora só de acertar o httpd.conf para que contém as seguintes diretrizes: AccessFileName .htaccess <Files ~ "^\.ht">Pronto. Agora ao tentar acessar o site http que esta armazenado na pasta /srv/www/htdocs/msn-proxy, o usuario devera informar seu login e senha. Fonte: http://manualwip.matik.com.br/content/view/38/50/ http://sourceforge.net/forum/forum.php?thread_id=3246293&forum_id=702817 Claudir Pereira dos Santos Matelândia, 28/04/2009 |
Pesquisar neste blog
Mostrando postagens com marcador Apache. Mostrar todas as postagens
Mostrando postagens com marcador Apache. Mostrar todas as postagens
quinta-feira, 27 de setembro de 2012
Usando htpasswd no Apache para controlar acesso no OpenSuse 11.1
Postado por
Claudir Pereira dos Santos
às
15:51
0
comentários
Enviar por e-mailPostar no blog!Compartilhar no XCompartilhar no FacebookCompartilhar com o Pinterest
quinta-feira, 23 de dezembro de 2010
Usando base LDAP do Active Directory do Windows Server 2008 64 bits para autenticação do Apache rodando no openSUSE 11.3 64 bits
Entre as várias opções de autenticação do Apache existe uma que permite usar base LDAP. Nessa dica está sendo usado uma base do Active Directory do Windows Server 2008 64 bits com o Microsoft Identity Management for UNIX 6.0 instalado. Nesta dica será exposto como usar autenticação com e sem ele. A máquina onde está instalada o Apache esta com sistema openSUSE 64 bits com todas as configurações para funcionamento com Hosts Virtuais.
Para ser usado a autenticação LDAP, primeiramente deve se ativar os módulos LDAP e AUTHNZ_LDAP do Apache. Isso pode ser feito facilmente com os comandos abaixo:
Para ser usado a autenticação LDAP, primeiramente deve se ativar os módulos LDAP e AUTHNZ_LDAP do Apache. Isso pode ser feito facilmente com os comandos abaixo:
# a2enmod ldap
# a2enmod authnz_ldap
Feito isso, agora basta configurar um diretório para autenticação. Nesse exemplo, o arquivo de configuração do host virtual se encontra em /etc/apache2/vhosts/vhost.conf. Abra o arquivo com o seguinte comando:
# vi /etc/apache2/vhosts/vhost.confPressione "i" para iniciar a alteração do arquivo e escolha um diretório para aplicar as configurações. Um exemplo básico usando o Microsoft Identity Management for UNIX seria o seguinte:
<directory "/srv/www/vhosts/dominio.com/diretorio">
Options All
Order allow,deny
Allow from all
AuthBasicAuthoritative off
AuthName "Informe usuario e senha"
AuthType Basic
AuthBasicProvider ldap
AuthzLDAPAuthoritative on
AuthLDAPBindDN "cn=usuarioApache,ou=UsuLocais,dc=dominio,dc=com"
AuthLDAPBindPassword "123456"
AuthLDAPURL ldap://192.168.0.1:389/ou=UsuLocais,dc=dominio,dc=com?uid
Require valid-user
DirectoryIndex index.html
</Directory>
Feche o arquivo pressionando "ESC" depois ":wq" e em seguida "Enter". Agora o apache deve ser parado e reiniciado para que as alterações entrem em vigor:
# rcapache2 stop
# rcapache2 start
No código acima, a primeira linha em vermelho informa o usuário que irá se conectar a base ldap para ler as informações, a "ou" onde está esse usuário e o domínio ao qual ele pertence. Na segunda linha em vermelho, é informado a senha do usuário. Já na terceira linha, é informado onde deve ser procurada as informações do usuário que está tentando se autenticar no diretório. Neste caso, na terceira linha (AuthLDAPURL) a busca é feita pelo "uid", por isso o usuário que irá se autenticar deverá ter sua conta corretamente configurada na aba UNIX Atributes, no Snap-in "Usuários e Computadores do Active Directory" como pode ser visto na tela abaixo:
Além disso, ao realizar as configurações, tenha certeza que os usuários que irão se autenticar estão realmente dentro da "ou" informada pois caso contrário será retornado erro 500 referente a problemas internos do servidor.
Um exemplo de AuthLDAPURL para fazer busca em todo o domínio sem usar o Microsoft Identity Management for UNIX 6.0 seria como abaixo:
AuthLDAPURL "ldap://192.168.0.1:389/dc=dominio,dc=com?sAMAccountName?sub?(objectClass=person)"
Com isso, qualquer usuário do domínio poderá realizar acesso na pasta especificada, mas a busca no logon será um pouco mais demorada pois o sistema irá varrer o domínio todo para encontrar o usuário e não somente uma "ou" ou "cn" em específico.
Seria isso, existe muitas outras configurações possíveis, mas essa dica é apenas para ajudar a quem está iniciando e encontrou dificuldades nos primeiros testes. Sempre que houver problemas, é recomendável ler o arquivo de log referente aos erros pois neles as informações são mais precisas sobre as causas. Até a próxima.
Cordialmente;
Claudir Pereira dos Santos
Matelândia-PR
Além disso, ao realizar as configurações, tenha certeza que os usuários que irão se autenticar estão realmente dentro da "ou" informada pois caso contrário será retornado erro 500 referente a problemas internos do servidor.
Um exemplo de AuthLDAPURL para fazer busca em todo o domínio sem usar o Microsoft Identity Management for UNIX 6.0 seria como abaixo:
AuthLDAPURL "ldap://192.168.0.1:389/dc=dominio,dc=com?sAMAccountName?sub?(objectClass=person)"
Com isso, qualquer usuário do domínio poderá realizar acesso na pasta especificada, mas a busca no logon será um pouco mais demorada pois o sistema irá varrer o domínio todo para encontrar o usuário e não somente uma "ou" ou "cn" em específico.
Seria isso, existe muitas outras configurações possíveis, mas essa dica é apenas para ajudar a quem está iniciando e encontrou dificuldades nos primeiros testes. Sempre que houver problemas, é recomendável ler o arquivo de log referente aos erros pois neles as informações são mais precisas sobre as causas. Até a próxima.
Cordialmente;
Claudir Pereira dos Santos
Matelândia-PR
Postado por
Claudir Pereira dos Santos
às
08:40
0
comentários
Enviar por e-mailPostar no blog!Compartilhar no XCompartilhar no FacebookCompartilhar com o Pinterest
Marcadores:
Active Directory,
aenmod,
Apache,
authLDAPURL,
Linux,
mod_auth_ldap,
mod_ldap
terça-feira, 7 de dezembro de 2010
Configurando vhost no apache2 opensuse 11.3 64 bits
Segue abaixo alguns comando úteis para configurar vhost no Apache2 no linux:
#vi /etc/apache2/listen.conf
Subistituir para NameVirtualHost *:80
Acessando a pasta de configurações do vhost
#cd /etc/apache2/vhosts.d/
Efetuando uma cópia do arquivo de exemplo:
#cp vhost.template vhost3.conf
Removendo os comentários:
#cat vhost3.conf |grep -v "#" > vhost2.conf
Removendo as linhas em branco:
egrep -v "^>|^$" vhost2.conf > vhost.conf
Exemplo de configuração do arquivo vhost.conf
#vi /etc/apache2/listen.conf
Subistituir para NameVirtualHost *:80
Acessando a pasta de configurações do vhost
#cd /etc/apache2/vhosts.d/
Efetuando uma cópia do arquivo de exemplo:
#cp vhost.template vhost3.conf
Removendo os comentários:
#cat vhost3.conf |grep -v "#" > vhost2.conf
Removendo as linhas em branco:
egrep -v "^>|^$" vhost2.conf > vhost.conf
Exemplo de configuração do arquivo vhost.conf
<VirtualHost *:80>
ServerAdmin webmaster@claupers.com.br
ServerName www.claupers.com.br
ServerAlias claupers.com.br
DocumentRoot /srv/www/vhosts/claupers.com.br
ErrorLog /var/log/apache2/dummy-host.example.com-error_log
CustomLog /var/log/apache2/dummy-host.example.com-access_log combined
HostnameLookups Off
UseCanonicalName On
ServerSignature On
ScriptAlias /cgi-bin/ "/srv/www/vhosts/claupers.com.br/cgi-bin/"
<Directory "/srv/www/vhosts/claupers.com.br/cgi-bin">
AllowOverride None
Options +ExecCGI -Includes
Order allow,deny
Allow from all
</Directory>
<IfModule mod_userdir.c>
UserDir public_html
Include /etc/apache2/mod_userdir.conf
</IfModule>
<Directory "/srv/www/vhosts/claupers.com.br">
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
<VirtualHost *:80>
ServerAdmin webmaster@hospital.com.br
ServerName www.hospital.com.br
ServerAlias hospital.com.br
DocumentRoot /srv/www/vhosts/hospital.com.br
DirectoryIndex index.php
ErrorLog /var/log/apache2/hospital.com.br-error_log
CustomLog /var/log/apache2/hospital.com.br-access_log combined
HostnameLookups Off
UseCanonicalName On
ServerSignature On
ScriptAlias /cgi-bin/ "/srv/www/vhosts/hospital.com.br/cgi-bin/"
<Directory "/srv/www/vhosts/hospital.com.br/cgi-bin">
AllowOverride All
Options +ExecCGI -Includes
Order allow,deny
Allow from all
</Directory>
<IfModule mod_userdir.c>
UserDir public_html
Include /etc/apache2/mod_userdir.conf
</IfModule>
<Directory "/srv/www/vhosts/hospital.com.br">
Options Indexes FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
ServerAdmin webmaster@claupers.com.br
ServerName www.claupers.com.br
ServerAlias claupers.com.br
DocumentRoot /srv/www/vhosts/claupers.com.br
ErrorLog /var/log/apache2/dummy-host.example.com-error_log
CustomLog /var/log/apache2/dummy-host.example.com-access_log combined
HostnameLookups Off
UseCanonicalName On
ServerSignature On
ScriptAlias /cgi-bin/ "/srv/www/vhosts/claupers.com.br/cgi-bin/"
<Directory "/srv/www/vhosts/claupers.com.br/cgi-bin">
AllowOverride None
Options +ExecCGI -Includes
Order allow,deny
Allow from all
</Directory>
<IfModule mod_userdir.c>
UserDir public_html
Include /etc/apache2/mod_userdir.conf
</IfModule>
<Directory "/srv/www/vhosts/claupers.com.br">
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
<VirtualHost *:80>
ServerAdmin webmaster@hospital.com.br
ServerName www.hospital.com.br
ServerAlias hospital.com.br
DocumentRoot /srv/www/vhosts/hospital.com.br
DirectoryIndex index.php
ErrorLog /var/log/apache2/hospital.com.br-error_log
CustomLog /var/log/apache2/hospital.com.br-access_log combined
HostnameLookups Off
UseCanonicalName On
ServerSignature On
ScriptAlias /cgi-bin/ "/srv/www/vhosts/hospital.com.br/cgi-bin/"
<Directory "/srv/www/vhosts/hospital.com.br/cgi-bin">
AllowOverride All
Options +ExecCGI -Includes
Order allow,deny
Allow from all
</Directory>
<IfModule mod_userdir.c>
UserDir public_html
Include /etc/apache2/mod_userdir.conf
</IfModule>
<Directory "/srv/www/vhosts/hospital.com.br">
Options Indexes FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
Seria isso.
Cordialmente;
Claudir Pereira dos Santos
Matelândia, 13 de junho de 2011.
Postado por
Claudir Pereira dos Santos
às
20:02
0
comentários
Enviar por e-mailPostar no blog!Compartilhar no XCompartilhar no FacebookCompartilhar com o Pinterest
Assinar:
Postagens (Atom)
