Fuck......
This commit is contained in:
Binary file not shown.
BIN
relatorio/relatorio.synctex.gz
Normal file
BIN
relatorio/relatorio.synctex.gz
Normal file
Binary file not shown.
@@ -380,10 +380,10 @@ Verificamos que, como é suposto: sem OCSP não é possivel autenticar; com OCSP
|
|||||||
podemos autenticar; e com OCSP mas com certificado revogado, a autenticação falha.
|
podemos autenticar; e com OCSP mas com certificado revogado, a autenticação falha.
|
||||||
|
|
||||||
\section{Servidor Apache e OCSP}
|
\section{Servidor Apache e OCSP}
|
||||||
|
Para a configuração da ultima maquina, temos o OpenSSL e Apache no mesmo servidor, por isso temos de configurar
|
||||||
|
as pastas necessarias, os utilizadores do serviço, configurar os edereços e uma route:
|
||||||
\begin{codeblock}{VM\_OPENSSL\_APACHE.sh}
|
\begin{codeblock}{VM\_OPENSSL\_APACHE.sh}
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
# configuracao
|
# configuracao
|
||||||
source VM_CONFIG.sh
|
source VM_CONFIG.sh
|
||||||
|
|
||||||
@@ -424,12 +424,10 @@ cp conf/ssl.conf /etc/httpd/conf.d/ssl.conf
|
|||||||
cp conf/httpd.conf /etc/httpd/conf/httpd.conf
|
cp conf/httpd.conf /etc/httpd/conf/httpd.conf
|
||||||
cp conf/httpd-totp /etc/pam.d/httpd-totp
|
cp conf/httpd-totp /etc/pam.d/httpd-totp
|
||||||
|
|
||||||
# sim, e preciso fazer isto para carregar servicos
|
|
||||||
echo "LoadModule session_module modules/mod_session.so" > /etc/httpd/conf.modules.d/01-session.conf
|
echo "LoadModule session_module modules/mod_session.so" > /etc/httpd/conf.modules.d/01-session.conf
|
||||||
echo "LoadModule session_cookie_module modules/mod_session_cookie.so" >> /etc/httpd/conf.modules.d/01-session.conf
|
echo "LoadModule session_cookie_module modules/mod_session_cookie.so" >> /etc/httpd/conf.modules.d/01-session.conf
|
||||||
echo "LoadModule auth_form_module modules/mod_auth_form.so" > /etc/httpd/conf.modules.d/01-auth_form.conf
|
echo "LoadModule auth_form_module modules/mod_auth_form.so" > /etc/httpd/conf.modules.d/01-auth_form.conf
|
||||||
|
|
||||||
# mega paginas webs
|
|
||||||
cp -r www/* /var/www/html/
|
cp -r www/* /var/www/html/
|
||||||
chown -R apache:apache /var/www/html/
|
chown -R apache:apache /var/www/html/
|
||||||
|
|
||||||
@@ -438,21 +436,108 @@ httpd -X
|
|||||||
|
|
||||||
\subsection{Configuração da Máquina}
|
\subsection{Configuração da Máquina}
|
||||||
|
|
||||||
asd
|
Como já referimos a Máquina tem ambos o serviço OpenSSL e Apache, por isso vai precisar de dois .conf files para
|
||||||
|
configurar-los. O httpd.conf tem as portas e modulos enquanto o ssl.conf tem a configuração da autenticação mútua, e o OCSP:
|
||||||
|
\begin{codeblock}{httpd.conf}
|
||||||
|
ServerRoot "/etc/httpd"
|
||||||
|
|
||||||
|
Include conf.modules.d/*.conf
|
||||||
|
LoadModule authnz_pam_module modules/mod_authnz_pam.so
|
||||||
|
LoadModule mpm_event_module modules/mod_mpm_event.so
|
||||||
|
|
||||||
|
User apache
|
||||||
|
Group apache
|
||||||
|
|
||||||
|
Listen 80
|
||||||
|
Listen 443
|
||||||
|
|
||||||
|
Include conf.d/*.conf
|
||||||
|
|
||||||
|
DocumentRoot "/var/www/html"
|
||||||
|
<Directory "/var/www/html">
|
||||||
|
Options Indexes FollowSymLinks
|
||||||
|
AllowOverride None
|
||||||
|
Require all granted
|
||||||
|
</Directory>
|
||||||
|
\end{codeblock}
|
||||||
|
|
||||||
|
\begin{codeblock}{ssl.conf}
|
||||||
|
<VirtualHost *:443>
|
||||||
|
ServerName 10.60.0.1
|
||||||
|
DocumentRoot /var/www/html
|
||||||
|
|
||||||
|
SSLEngine on
|
||||||
|
SSLCertificateFile /etc/httpd/ssl/apache.crt
|
||||||
|
SSLCertificateKeyFile /etc/httpd/ssl/apache.key
|
||||||
|
SSLCACertificateFile /etc/httpd/ssl/ca.crt
|
||||||
|
|
||||||
|
# mutual authentication
|
||||||
|
SSLVerifyClient require
|
||||||
|
SSLVerifyDepth 1
|
||||||
|
|
||||||
|
# ocsp validation
|
||||||
|
SSLOCSPEnable on
|
||||||
|
SSLOCSPDefaultResponder "http://10.60.0.1:8888"
|
||||||
|
SSLOCSPOverrideResponder on
|
||||||
|
SSLOCSPUseRequestNonce off
|
||||||
|
|
||||||
|
# session management
|
||||||
|
Session On
|
||||||
|
SessionCookieName session path=/;HttpOnly;Secure
|
||||||
|
|
||||||
|
# proteger
|
||||||
|
<Location "/">
|
||||||
|
AuthType Form
|
||||||
|
AuthName "Coimbra VPN"
|
||||||
|
AuthFormProvider PAM
|
||||||
|
AuthPAMService httpd-totp
|
||||||
|
AuthFormLoginRequiredLocation "/login.html"
|
||||||
|
Require valid-user
|
||||||
|
</Location>
|
||||||
|
|
||||||
|
# public login page
|
||||||
|
<Location "/login.html">
|
||||||
|
AuthType None
|
||||||
|
Require all granted
|
||||||
|
</Location>
|
||||||
|
|
||||||
|
# login handler
|
||||||
|
<Location "/dologin">
|
||||||
|
SetHandler form-login-handler
|
||||||
|
AuthType Form
|
||||||
|
AuthName "Coimbra VPN"
|
||||||
|
AuthFormProvider PAM
|
||||||
|
AuthPAMService httpd-totp
|
||||||
|
Require all granted
|
||||||
|
AuthFormLoginSuccessLocation "/index.html"
|
||||||
|
AuthFormLoginRequiredLocation "/login.html?error=1"
|
||||||
|
</Location>
|
||||||
|
|
||||||
|
# logout handler
|
||||||
|
<Location "/logout">
|
||||||
|
SetHandler form-logout-handler
|
||||||
|
AuthFormLogoutLocation "/login.html?loggedout=1"
|
||||||
|
</Location>
|
||||||
|
|
||||||
|
</VirtualHost>
|
||||||
|
|
||||||
|
# redirect para https
|
||||||
|
<VirtualHost *:80>
|
||||||
|
ServerName 10.60.0.1
|
||||||
|
Redirect permanent / https://10.60.0.1/
|
||||||
|
</VirtualHost>
|
||||||
|
\end{codeblock}
|
||||||
\subsection{Configuração do Serviço Apache}
|
\subsection{Configuração do Serviço Apache}
|
||||||
|
|
||||||
O servidor interno (\texttt{10.60.0.1}) alberga o serviço Apache e o responder OCSP
|
O servidor interno (\texttt{10.60.0.1}) alberga o serviço Apache e o responder OCSP
|
||||||
da autoridade de certificação.
|
da autoridade de certificação.
|
||||||
|
|
||||||
\subsubsection{Testes}
|
\subsubsection{Testes}
|
||||||
|
\begin{itemize}
|
||||||
1. verificar que é necessário o dominio,
|
\item \textbf{Domínio:} Verificou-se que o acesso só é permitido utilizando o endereço correto, pois se for inserido outro dominio, não é direcionado para o site do Apache.
|
||||||
|
\item \textbf{Redirecionamento HTTPS:} Ao testar quando colocamos http, e o dominio certo, era redirecionado para https.
|
||||||
1. verificar que é necessário o https,
|
\item \textbf{Autenticação com o Certificado:} O acesso foi negado ao apresentar certificados inválidos ou ausentes no browser, devolvendo um erro com sobre não conseguir establecer connexão porque falta de certificado.
|
||||||
|
\end{itemize}
|
||||||
1. verificar que é necessário o certificado,
|
|
||||||
|
|
||||||
|
|
||||||
\subsection{Configuração do Serviço OpenSSL}
|
\subsection{Configuração do Serviço OpenSSL}
|
||||||
|
|
||||||
@@ -471,7 +556,7 @@ openssl ca -revoke user.crt -config cheese.cfg -keyfile ca.key -cert ca.crt
|
|||||||
Podemos validar que o OCSP
|
Podemos validar que o OCSP
|
||||||
|
|
||||||
1. verificar que recebe os certificados e responde
|
1. verificar que recebe os certificados e responde
|
||||||
|
%Preciso de ver isso
|
||||||
1. verificar que revocation funciona
|
1. verificar que revocation funciona
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user