Mostrando postagens com marcador Servidor. Mostrar todas as postagens
Mostrando postagens com marcador Servidor. Mostrar todas as postagens

segunda-feira, 10 de abril de 2017

SSL, certificado e teste Qualys SSL Labs - 10/04/2017

Para a segurança da comunicação do servidor web, é necessário utilizar SSL. O certificado escolhido para nosso servidor foi o certificado da autoridade Let's Encrypt, que provê certificados gratuítos para utilização em websites, validando sua segurança. A Let's Encrypt emite certificados válidos por 90 dias, e a autoridade encoraja a automatização do processo de renovação através do seu cliente de instalação e renovação, o certbot.

Implantamos o certificado do Let's Encrypt em nosso servidor Apache, e realizamos testes com a ferramenta da Qualys SSL Labs, a SSL Server Test. Em um primeiro momento, após a implantação, nosso servidor (já configurado e certificado) recebeu nota A (a mínima que o projeto exige para aprovação). Em aula, foi sugerido pelo Prof. Ivan a obtenção da nota A+ (nota máxima do SSL Server Test), onde tivemos que pesquisar e entender o funcionamento do mecanismo de segurança HSTS (HTTP Strict Transport Security), que permite a comunicação estritamente via HTTPS com nosso servidor,  necessário para obtenção da maior nota possível no teste.

Após a implementação do HSTS, obtivemos a nota máxima no Qualys SSL Server Test.



sexta-feira, 31 de março de 2017

REST API - 31/03/2017



O sistema StLocator tem a proposta de oferecer seus serviços em forma  de API, supondo um eventual crescimento da aplicação e ou integração com outros sistemas que estendam e ou agreguem de alguma forma à solução para restituição de bens perdidos, portanto o nosso servidor utilizará o modelo de arquitetura REST.

Transferência de Estado Representacional, em inglês, Representation State Transfer, ou REST, é um termo datado de 2000 na tese de doutorado de Roy Fielding, um dos principais autores das especificações do protocolo HTTP e co-fundador do projeto Apache Web Server. A própria rede mundial de computadores é um exemplo de aplicação funcionando em REST. Essa tecnologia aproveita o protocolo mais utilizado e seus métodos para realizar transações stateless. Também conhecidos como HTTP verbs, pode-se citar entre os mais comuns: GET, POST, PUT, DELETE.  O paradigma “sem estado” dessas transações de requisição entre cliente e  servidor torna cada um delas únicas, poupando o lado do cliente de tratar comunicação com banco de dados, logs, cache, etc., e da mesma forma o lado servidor não lida com interface, experiência de usuário, logo tal divisão permite liberdade de evolução distinta para os ambientes. A partir desse princípio o modelo de serviço converge com o estrutural da aplicação, que a princípio considerou-se tratar de um MVC, quando na prática acaba se tornando um MVW, Model View Whatever,  o tanto faz é uma bem humorada definição sugerida pela equipe do Angular JS que significa utilizar  o que for mais adequado para aplicação, seja MVC, MVVM ou o MVP. Neste momento utilizaremos o MVC, contudo outras abordagens poderão ser analisadas durante o desenvolvimento.

Nosso servidor REST terá diversos tipos de respostas de acordo com as  requisições clientes, pois disponibilizaremos respostas em JSON, XML, HTML e CSV, o que permite uma integração com aplicações Web e Mobile.

domingo, 5 de março de 2017

Preparação do ambiente Amazon AWS - 03/03/2017

A fim de entender e estudar a arquitetura dos serviços da Amazon, esse fim de semana corremos atrás de estudar as configurações necessárias para que o sistema funcione perfeitamente. 

Conseguimos configurar uma máquina virtual Linux com o EC2, conectar via SSH utilizando o cliente PuTTY no Windows e realizar a instalação dos pacotes que iremos precisar para a utilização do sistema (Servidor web, PHP e PostgreSQL+Postgis). Com bastante leitura da documentação da Amazon AWS (disponível em https://aws.amazon.com/documentation/), conseguimos utilizar o Amazon Route 53 (serviço de DNS da Amazon) e direcionar nosso domínio (http://stlocator.com.br). 



Optamos por entender a infraestrutura do nosso ambiente para evitar problemas ao final do projeto (dica dada por alunos de semestres anteriores da disciplina), tendo assim, uma experiência fluída e tranquila ao disponibilizar nossa aplicação. 

Boa semana a todos, e não esqueça de acompanhar também a equipe São Longuinho no YouTube (o primeiro vídeo já foi enviado!).