GuFelicio
(usa Ubuntu)
Enviado em 14/06/2017 - 15:26h
Boa tarde, galera! Na realização de meu curso, foi pedido para que fosse feito a criação de um Servidor que possuisse FTP, Apache e MySql! Com isso, resolvi compartilhar a fórmula com vocês!
Toda essa instalação será feita em um Ubuntu Server, feita totalmente pelo Terminal!
Começaremos pela instalação do FTP, para facilitar o envio dos arquivos para nosso servidor! Utilizaremos o PROFTPD para isso!
• Vamos instalação ProFTPD:
# apt-get install proftpd
Para configurar o seu servidor FTP, edite o arquivo
de configuração e altere as diretivas listadas a
seguir:
# vi /etc/proftpd/proftpd.conf
• A primeira coisa a fazer é modificar a linha
"UseIPv6", deixando-a como "off", pois caso
contrário, você terá que utilizar o endereço IPv6:
UseIPv6 off
• A próxima linha a ser modificada é a do
"ServerName", coloque o nome do seu servidor
entre as aspas:
ServerName “FTP Gustavo"
• Agora adicionaremos a opção
"AllowForeignAddress", esta linha é a responsável
por autorizar as conexões externas. Se estamos
usando um FTP, lógico que a intenção não é usá-lo
internamente, então, essa linha deve estar
presente no arquivo:
AllowForeignAddress on
• Outra opção é a "RequireValidShell", deixando ela
como "off", o ProFTPD irá aceitar conexões de
usuários que não possuem shell válida no sistema,
consequentemente, usuários sem shell não podem
utilizar o SSH, por exemplo:
RequireValidShell off
• Mais uma opção é a "MaxInstances", que define a
quantidade de conexões simultâneas que o
servidor aceitará:
MaxInstances 20
• Cada usuário do FTP pode ter uma mensagem de
login diferente. Crie o arquivo welcome.msg no
home do usuário.
Reinicie o ProFTPD:
# /etc/init.d/proftpd restart
Pronto, após esses passos, seu servidor estará apto a receber arquivos via FTP, basta pegar seu IP, pelo comando: "ifconfig" e acessar por qualquer máquina!
Controlando Usuários:
• O comando useradd é usado para registrar contas de usuário no
sistema. A sintaxe desse comando é a seguinte:
• useradd [opções] nome_usuário
• Algumas opções para esse comando:
• -u user_ID: especifica o user_ID que será atribuído a esse usuário. Se
essa opção for omitida, o sistema atribuirá um número automaticamente
• -g group_ID: especifica o grupo_ID do grupo primário ao qual o usuário
pertencerá. Se essa opção for omitida, um novo grupo com o mesmo
nome do usuário será criado automaticamente;
• -G grupo1 [, grupo2...]: especifica múltiplos grupos aos quais um
usuário pode pertencer.
• -c comment: permite adicionar comentários sobre o usuário, se
necessário.
• -d home_directory: especifica o home directory do usuário, que é um
diretório atribuído a cada usuário.
• -m: usado com a opção -d para criar o home directory do usuário, caso
ele ainda não exista.
• -s login_shell: especifica o tipo de Shell (interpretador de comandos)
que será atribuído ao usuário.
• -e data_expiração: define uma data de validade para essa conta de
usuário. A data deve ser especificada no formato "AAAAMMDD", por
exemplo, 20050412 (12 de abril de 2005).
• Nome_usuário: define um nome para a conta de usuário que deve ser
usado no login.
• usermod [Opções] nome_usuário
• Esse comando é usado para atualizar informações sobe a conta do
usuário. Todas as opções para o comando useradd estão disponíveis
para esse comando.
• userdel [opções] nome_usuário
• Esse comando é usado para excluir uma conta de usuário. A opção -r
pode ser usada para que o home directory do usuário também seja
excluído.
________________________________________________________________________________________________________
Na segunda parte, iremos instalar o Apache, para podermos ter sites em nosso servidor!
Instalar o Apache:
# apt-get install apache2
Configurando:
Crie um diretório dentro de "/var/www/" para que seja a pasta daquele determinado site/usuário.
Crie um arquivo dentro do diretório "/etc/apache2/sites-available"
# vi /etc/apache2/sites-available/site.conf
Dentro desse arquivo, é necessário ter os seguintes comandos:
<VirtualHost *:80>
ServerName
www.dominio.com.br
ServerAdmin admin@dominio.com.br
DocumentRoot /var/www/site
DirectoryIndex home.html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
<Directory /var/www/site:
Options Indexes FollowSymLinks MultiViews
AllowOverride none
Deny from all
AuthType Basic
AuthName "Digite Usuario e senha"
AuthUserFile /var/www/site/.htpasswd
Require valid-user
Satisfy Any
</Directory>
</VirtualHost>
Explicação de cada linha do comando:
ServerAdmin –Define o e-mail do administrador do site.
ServerName –Define o nome (será a presentado) do servidor web.
DocumentRoot –Informa o diretório que contém as páginas
(documentos) web do servidor.
<Directory></Directory> - Permite especificar diretivas que se aplicam
somente ao diretório especificado .
DirectoryIndex –Define a página inicia l de um diretório web.
ErrorLog - Arquivo padrão de erros.
• AllowOverride –Permite especificar que diretivas declara
das no arquivo de controle de acesso podem se
“sobrepor” a diretivas encontradas anteriormente no
arquivo de configuração (default ).
• Allow –Permite definir uma lista de hosts que terão acesso liberado
a um determinado diretório. (ex, Allow from 127.0.0.1)
• Deny –Oposto de allow. (ex, Deny from all)
• Order –Permite especificar a ordem em que as diretivas de controle
de acesso serão lidas. (e x, Order deny,allow)
• AuthType –Define o tipo de autenticação (Basic ou Digest).
• AuthName –Define o rótulo (label) da janela de pedido de
autenticação.
• AuthUserFile –Define o nome do arquivo contendo o nome e a
senha (lista de usuários) que pode acessar o diretório.
• AuthGroupFile –Define o nome do arquivo contendo os nomes dos
grupos de usuários que podem a cessar o diretório .
• Require –Permite especificar quais usuários ou grupos podem
acessar um diretório. Mais de um, se parados por espaço
Após realizados essas ações, você já poderá fazer o upload dos arquivos HTML para dentro da pasta criada em /
var/www/
.
__________________________________________________________________________________________________________
Instalação do MySql:
O mais simples é a instalação do MySql, uma vez que não é necessita de uma configuração!
Ele vai nos ajudar na hora de organizarmos nossas bases de Dados, onde nossos sites e aplicações irão armazenar dados!
Instalando MySql:
sudo apt-get install mysql-server
Após isso, o MySql já estará instalado e pronto para uso em nossos servidores!
__________________________________________________________________________________________________________
Por último, iremos instalar o PHP7 em nosso servidor, para que haja possibilidade de execução de scripts, conexões aos nossos bancos de dados e etc...
Para isso, será necessário que os seguintes comando sejam realizados no terminal:
1. sudo add-apt-repository ppa:ondrej/php
2. sudo apt-get update
3. sudo apt-get install php7.0 libapache2-mod-php7.0 php7.0-mcrypt php7.0-mysql
__________________________________________________________________________________________________________
Assim, finalizamos a instalação do nosso servidor e ele está pronto para a realização de tarefas como:
-Upload e Download de Arquivos via FTP
-Acesso a sites
-Comandos de PHP
-Armazenamento de Bancos De Dados!
Espero que essas informações ajudem vocês! Obrigado pela atenção!