One place for hosting & domains

      servidor

      Cómo instalar el servidor dweb Apache en CentOS 8 [Guía de inicio rápido]


      Introducción

      El servidor HTTP Apache es el más usado del mundo. Ofrece muchas características potentes, entre las que se incluyen módulos que se cargan de forma dinámica, una sólida compatibilidad con medios y amplia integración con otras herramientas de software populares.

      A través de esta guía, instalará un servidor web Apache con hosts virtuales en su servidor de CentOS 8. Para acceder a una versión más detallada de este tutorial, consulte Cómo instalar el servidor web Apache en CentOS 8.

      Requisitos previos

      Necesitará lo siguiente para completar esta guía:

      Paso 1: Instalar Apache

      Apache está disponible dentro de los repositorios de software predeterminados de CentOS, lo cual significa que puede instalarlo con el administrador de paquetes dnf.

      Ya que configuramos un non-root sudo user en los requisitos previos, instale el paquete Apache:

      Una vez confirmada la instalación, dnf instalará Apache y todas las dependencias necesarias.

      Paso 2: Ajustar el firewall

      Al completar el paso 4 de la guía de Configuración inicial del servidor con CentOS 8 que se mencionó en la sección de requisitos previos, ya habrá instalado firewalld en su servidor para suministrar las solicitudes a través de HTTP.

      Si además piensa configurar Apache para que proporcione contenido a través de HTTPS, también le convendrá abrir el puerto 443 al habilitar el servicio https:

      • sudo firewall-cmd --permanent --add-service=https

      A continuación, vuelva a cargar el firewall para que entren en efecto estas nuevas reglas:

      • sudo firewall-cmd --reload

      Una vez que se vuelva a cargar el firewall, estará listo para iniciar el servicio y comprobar el servidor web.

      Paso 3: Comprobar su servidor web

      Una vez que la instalación se completa, Apache no se inicia automáticamente en CentOS, por lo que deberá iniciar el proceso de Apache de forma manual:

      • sudo systemctl start httpd

      Verifique que el servicio funcione con el siguiente comando:

      • sudo systemctl status httpd

      Obtendrá un estado active cuando el servicio esté en ejecución:

      Output

      ● httpd.service - The Apache HTTP Server Loaded: loaded (/usr/lib/systemd/system/httpd.service; disabled; vendor preset: disa> Active: active (running) since Thu 2020-04-23 22:25:33 UTC; 11s ago Docs: man:httpd.service(8) Main PID: 14219 (httpd) Status: "Running, listening on: port 80" Tasks: 213 (limit: 5059) Memory: 24.9M CGroup: /system.slice/httpd.service ├─14219 /usr/sbin/httpd -DFOREGROUND ├─14220 /usr/sbin/httpd -DFOREGROUND ├─14221 /usr/sbin/httpd -DFOREGROUND ├─14222 /usr/sbin/httpd -DFOREGROUND └─14223 /usr/sbin/httpd -DFOREGROUND ...

      Acceda a la página de inicio predeterminada de Apache para confirmar que el software se esté ejecutando correctamente mediante su dirección IP:

      http://your_server_ip
      

      Visualizará la página web predeterminada de Apache en CentOS 8:

      Página predeterminada de Apache para CentOS 8

      Esta página indica que Apache funciona correctamente. También incluye información básica sobre archivos y ubicaciones de directorios importantes de Apache.

      Paso 4: Configuración de hosts virtuales (recomendado)

      Cuando utilice el servidor web Apache, puede recurrir a los hosts virtuales (si está más familiarizado con Nginx, son similares a los bloques de servidor) para encapsular los detalles de configuración y alojar más de un dominio desde un único servidor. En este paso, configurará un dominio llamado example.com, pero debería cambiarlo por su propio nombre de dominio. Si va a configurar un nombre de dominio con DigitalOcean, consulte nuestra Documentación de red.

      Cree el directorio html para example.com como se muestra, usando el indicador -p para crear cualquier directorio principal necesario:

      • sudo mkdir -p /var/www/example.com/html

      Cree un directorio adicional para almacenar archivos de registro para el sitio:

      • sudo mkdir -p /var/www/example.com/log

      A continuación, asigne la propiedad del directorio html con la variable de entorno $USER:

      • sudo chown -R $USER:$USER /var/www/example.com/html

      Asegúrese de que estén configurados los permisos predeterminados de su root web:

      • sudo chmod -R 755 /var/www

      A continuación, cree una página de ejemplo index.html utilizando vi o su editor favorito:

      • sudo vi /var/www/example.com/html/index.html

      Pulse i para realizar un cambio al modo INSERT y agregar el siguiente ejemplo HTML al archivo:

      /var/www/example.com/html/index.html

      <html>
        <head>
          <title>Welcome to Example.com!</title>
        </head>
        <body>
          <h1>Success! The example.com virtual host is working!</h1>
        </body>
      </html>
      

      Guarde y cierre el archivo presionando ESC, escribiendo :wq y presionando ENTER.

      Una vez establecidos el directorio de su sitio y el archivo de índice de ejemplo, casi estará listo para crear archivos de host virtuales. Mediante los archivos de host virtuales se especifica la configuración de sus sitios individuales y se informa al servidor web de Apache la manera de responder a varias solicitudes de dominio.

      Antes de crear sus hosts virtuales, deberá crear un directorio sites-available para almacenarlos. También creará el directorio sites-enabled que indica a Apache que un host virtual está preparado para visitantes. En el directorio sites-enabled se almacenarán enlaces simbólicos a hosts virtuales que deseemos publicar. Cree ambos directorios con el siguiente comando:

      • sudo mkdir /etc/httpd/sites-available /etc/httpd/sites-enabled

      A continuación, indicará a Apache que busque hosts virtuales en el directorio sites-enabled. Para hacerlo, edite el archivo de configuración principal de Apache con vi o su editor preferido y agregue una línea que declare un directorio opcional para los archivos de configuración adicionales:

      • sudo vi /etc/httpd/conf/httpd.conf

      Presione la G mayúscula para ir al final del archivo. A continuación, presione i para pasar al modo INSERT y agregue la siguiente línea al final del archivo:

      /etc/httpd/conf/httpd.conf

      ...
      # Supplemental configuration
      #
      # Load config files in the "/etc/httpd/conf.d" directory, if any.
      IncludeOptional conf.d/*.conf
      IncludeOptional sites-enabled/*.conf
      

      Guarde y cierre el archivo cuando termine de añadir esa línea. Ahora que están listos sus directorios de hosts virtuales, creará su archivo de host virtual.

      Comience creando un nuevo archivo en el directorio sites-available:

      • sudo vi /etc/httpd/sites-available/example.com.conf

      Agregue el siguiente bloque de configuración y cambie el dominio example.com por su nombre de dominio:

      /etc/httpd/sites-available/example.com.conf

      <VirtualHost *:80>
          ServerName www.example.com
          ServerAlias example.com
          DocumentRoot /var/www/example.com/html
          ErrorLog /var/www/example.com/log/error.log
          CustomLog /var/www/example.com/log/requests.log combined
      </VirtualHost>
      

      Esto indicará a Apache dónde encontrar directamente el root que contiene los documentos web de acceso público. También, dónde almacenar errores y solicitar registros para este sitio en particular.

      Guarde y cierre el archivo cuando haya terminado.

      Ahora que creó archivos de host virtuales, los habilitará para que Apache sepa presentarlos a los visitantes. Para lograrlo, cree un enlace simbólico para cada host virtual en el directorio sites-enabled:

      • sudo ln -s /etc/httpd/sites-available/example.com.conf /etc/httpd/sites-enabled/example.com.conf

      Su host virtual quedará, así, configurado y listo para ofrecer contenido. Antes de reiniciar el servicio de Apache, nos aseguraremos de que a través de SELinux se implementen las políticas correctas para sus hosts virtuales.

      Paso 5: Ajustar los permisos de SELinux para hosts virtuales (recomendado)

      SELinux es un módulo de seguridad de kernel de Linux que aporta seguridad extrema a los sistemas Linux. CentOS 8 viene equipado con SELinux que está configurado para funcionar con la configuración predeterminada de Apache. Debido a que modificó la configuración predeterminada al configurar un directorio de registro personalizado en el archivo de configuración de los hosts virtuales, recibirá un error si intenta iniciar el servicio de Apache. Para resolver esto, deberá actualizar las políticas SELinux a fin de permitir que Apache escriba en los archivos necesarios.

      Existen diferentes formas de configurar políticas en función de las necesidades de su entorno, ya que SELinux le permite personalizar el nivel de seguridad. En este paso se abarcarán dos métodos de ajuste de políticas de Apache: el universal y el que se aplica a un directorio específico. Ajustar políticas en directorios es más seguro y, por lo tanto, es el enfoque recomendado.

      Ajustar políticas de Apache de forma universal

      Establecer la política de Apache de forma universal indicará a SELinux que trate de forma idéntica todos los procesos de Apache usando el booleano httpd_unified. Si bien este enfoque es más conveniente, no le brindará el mismo nivel de control que uno centrado en una política de archivos o directorios.

      Ejecute el siguiente comando para configurar una política universal de Apache:

      • sudo setsebool -P httpd_unified 1

      El comando setsebool cambia los valores booleanos de SELinux. El marcador -P actualizará el valor de tiempo de inicio y hará que este cambio persista en los reinicios. httpd_unified es el booleano que indicará a SELinux que trate todos los procesos de Apache como el mismo tipo, por lo que lo habrá habilitado con un valor de 1.

      Ajustar políticas de Apache en un directorio

      Configurar individualmente los permisos de SELinux para el directorio /var/www/example.com/log le brindará mayor control sobre sus políticas de Apache, pero también puede requerir más mantenimiento. Debido a que esta opción no establece políticas de forma universal, deberá fijar de forma manual el tipo de contexto para cualquier nuevo directorio de registro especificado en sus configuraciones de host virtuales.

      Primero, compruebe el tipo de contexto que SELinux dio al directorio /var/www/example.com/log:

      • sudo ls -dlZ /var/www/example.com/log/

      Este comando enumera e imprime el contexto de SELinux del directorio. Obtendrá un resultado similar al siguiente:

      Output

      drwxr-xr-x. 2 root root unconfined_u:object_r:httpd_sys_content_t:s0 6 Apr 23 23:51 /var/www/example.com/log/

      El contexto actual es httpd_sys_content_t, que indica a SELinux que el proceso de Apache solo puede leer archivos creados en este directorio. A través de este tutorial, cambiará el tipo de contexto del directorio /var/www/example.com/log a httpd_log_t. Este tipo permitirá que Apache genere archivos de registro de la aplicación web y realice anexos a ellos:

      • sudo semanage fcontext -a -t httpd_log_t "/var/www/example.com/log(/.*)?"

      A continuación, utilice el comando restorecon para aplicar estos cambios y hacer que persistan a través de los reinicios:

      • sudo restorecon -R -v /var/www/example.com/log

      El indicador -R ejecuta este comando de forma recursiva, lo que significa que actualizará cualquier archivo existente para que utilice el nuevo contexto. El indicador -v imprimirá los cambios de contexto realizados por el comando. Obtendrá el siguiente resultado que confirma los cambios:

      Output

      Relabeled /var/www/example.com/log from unconfined_u:object_r:httpd_sys_content_t:s0 to unconfined_u:object_r:httpd_log_t:s0

      Puede enumerar los contextos una vez más para ver los cambios:

      • sudo ls -dlZ /var/www/example.com/log/

      El resultado refleja el tipo de contexto actualizado:

      Output

      drwxr-xr-x. 2 root root unconfined_u:object_r:httpd_log_t:s0 6 Apr 23 23:51 /var/www/example.com/log/

      Ahora que el directorio /var/www/example.com/log usa el tipo httpd_log_t, estará listo para probar su configuración de host virtual.

      Paso 6: Probar el host virtual (recomendado)

      Una vez que el contexto se SELinux se haya actualizado con cualquiera de los métodos, Apache podrá realizar tareas de escritura en el directorio /var/www/example.com/log. Ahora podrá reiniciar con éxito el servicio de Apache:

      • sudo systemctl restart httpd

      Enumere el contenido del directorio /var/www/example.com/log para ver si Apache creó los archivos de registro:

      • ls -lZ /var/www/example.com/log

      Se le confirmará que Apache pudo crear los archivos error.log y requests.log especificados en la configuración del host virtual:

      Output

      -rw-r--r--. 1 root root system_u:object_r:httpd_log_t:s0 0 Apr 24 00:06 error.log -rw-r--r--. 1 root root system_u:object_r:httpd_log_t:s0 0 Apr 24 00:06 requests.log

      Ahora que tiene su host virtual configurado y los permisos SELinux actualizados, Apache proporcionará su nombre de dominio. Puede comprobarlo visitando http://example.com, donde debería ver algo como esto:

      ¡Éxito! ¡El host virtual example.com funciona!

      Esto confirma que su host virtual está correctamente configurado y ofrece contenido. Repita los pasos 4 y 5 para crear nuevos hosts virtuales con permisos de SELinux para dominios adicionales.

      Conclusión

      A través de este tutorial, instaló y gestionó el servidor web de Apache. Ahora que ha instaló su servidor web, dispone de varias opciones respecto del tipo de contenido que puede ofrecer y de las tecnologías que puede utilizar para crear una experiencia más completa.

      Si quiere construir una pila de aplicaciones más completa, puede consultar este artículo sobre cómo configurar una pila LAMP en CentOS 8.



      Source link

      Como instalar o Servidor Web Apache no CentOS 8 [Início rápido]


      Introdução

      O servidor HTTP Apache é o servidor Web mais amplamente usado no mundo. Ele fornece muitas características poderosas, incluindo módulos carregáveis dinamicamente, suporte robusto de mídia e uma integração extensa com outros softwares populares.

      Neste guia, você instalará um servidor web Apache com hosts virtuais em seu servidor CentOS 8. Para uma versão mais detalhada deste tutorial, por favor, consulte Como instalar o Servidor Web Apache no CentOS 8.

      Pré-requisitos

      Você precisará do seguinte para completar este guia:

      Passo 1 — Instalando o Apache

      O Apache está disponível dentro dos repositórios de software padrão do CentOS, o que significa que você pode instalá-lo com o gerenciador de pacotes dnf.

      Como o usuário sudo não root configurado nos pré-requisitos, instale o pacote Apache:

      Após confirmar a instalação, o dnf irá instalar o Apache e todas as dependências necessárias.

      Passo 2 — Ajustando o firewall

      Ao completar o Passo 4 do tutorial de Configuração Inicial de Servidor com o CentOS 8 mencionado na seção de pré-requisitos, você já terá instalado o firewalld em seu servidor para exibir solicitações por HTTP.

      Se você também planeja configurar o Apache para fornecer conteúdo por HTTPS, você também irá querer abrir a porta 443 habilitando o serviço https:

      • sudo firewall-cmd --permanent --add-service=https

      Em seguida, recarregue o firewall para colocar essas novas regras em vigor:

      • sudo firewall-cmd --reload

      Após o firewall recarregar, você está pronto para iniciar o serviço e verificar o servidor web.

      Passo 3 — Verificando seu Servidor Web

      O Apache não inicia automaticamente no CentOS assim que a instalação termina. Dessa forma você precisará iniciar o processo Apache manualmente:

      • sudo systemctl start httpd

      Verifique se o serviço está em execução com o seguinte comando:

      • sudo systemctl status httpd

      Você receberá um status active quando o serviço estiver executando:

      Output

      ● httpd.service - The Apache HTTP Server Loaded: loaded (/usr/lib/systemd/system/httpd.service; disabled; vendor preset: disa> Active: active (running) since Thu 2020-04-23 22:25:33 UTC; 11s ago Docs: man:httpd.service(8) Main PID: 14219 (httpd) Status: "Running, listening on: port 80" Tasks: 213 (limit: 5059) Memory: 24.9M CGroup: /system.slice/httpd.service ├─14219 /usr/sbin/httpd -DFOREGROUND ├─14220 /usr/sbin/httpd -DFOREGROUND ├─14221 /usr/sbin/httpd -DFOREGROUND ├─14222 /usr/sbin/httpd -DFOREGROUND └─14223 /usr/sbin/httpd -DFOREGROUND ...

      Acesse a página de destino padrão do Apache para confirmar que o software está funcionando corretamente através do seu endereço de IP:

      http://your_server_ip
      

      Você verá a página web padrão do Apache no CentOS 8:

      Default Apache page for CentOS 8

      Esta página indica que o Apache está funcionando corretamente. Ela também inclui algumas informações básicas sobre arquivos importantes do Apache e localizações de diretórios importantes.

      Passo 4 — Configurando Hosts Virtuais (Recomendado)

      Ao utilizar o servidor web Apache, você pode usar virtual hosts (se você estiver mais familiarizado com o Nginx, esses são semelhantes aos blocos de servidor) para encapsular detalhes de configuração e hospedar mais de um domínio em um único servidor. Neste passo,vamos configurar um domínio chamado example.com, mas você deve substituí-lo por seu próprio nome de domínio. Se você estiver configurando um nome de domínio com a DigitalOcean, consulte nossa Documentação de Rede.

      Crie o diretório html para o exemplo.com do seguinte modo, usando o sinalizador -p para criar todos os diretórios pais necessários:

      • sudo mkdir -p /var/www/example.com/html

      Crie um diretório adicional para armazenar arquivos de logs para o site:

      • sudo mkdir -p /var/www/example.com/log

      Em seguida, atribua a propriedade do diretório html com a variável de ambiente $USER:

      • sudo chown -R $USER:$USER /var/www/example.com/html

      Certifique-se de que seu web root tenha as permissões padrão configuradas:

      • sudo chmod -R 755 /var/www

      A seguir, crie uma página de exemplo index.html utilizando o nano ou seu editor favorito:

      • sudo vi /var/www/example.com/html/index.html

      Pressione i para mudar para o modo INSERT e adicione o seguinte exemplo HTML ao arquivo:

      /var/www/example.com/html/index.html

      <html>
        <head>
          <title>Welcome to Example.com!</title>
        </head>
        <body>
          <h1>Success! The example.com virtual host is working!</h1>
        </body>
      </html>
      

      Salve e feche o arquivo pressionando ESC, digitando :wq e pressionando ENTER.

      Com seu diretório do site e o arquivo de index prontos, você está quase pronto para criar os arquivos de virtual host. Os arquivos de virtual host especificam a configuração de seus sites separados e informam ao servidor Apache como responder a várias solicitações de domínios.

      Antes de criar seus virtual hosts, você precisará criar um diretório sites-available para armazená-los. Você também criará o diretório sites-enabled que informa ao Apache que um virtual host está pronto para servir aos visitantes. O diretório sites-enabled terá links simbólicos para os virtual hosts que queremos publicar. Crie ambos os diretórios com o seguinte comando:

      • sudo mkdir /etc/httpd/sites-available /etc/httpd/sites-enabled

      Em seguida, você irá informar ao Apache para procurar virtual hosts no diretório sites-enabled. Para conseguir isso, edite o arquivo de configuração principal do Apache usando o vi ou seu editor de texto favorito e adicione uma linha que declara um diretório opcional para arquivos de configuração adicionais:

      • sudo vi /etc/httpd/conf/httpd.conf

      Pressione o G maiúsculo para navegar até o final do arquivo. Em seguida pressione i para mudar para o modo INSERT e adicione a seguinte linha ao final do arquivo:

      /etc/httpd/conf/httpd.conf

      ...
      # Supplemental configuration
      #
      # Load config files in the "/etc/httpd/conf.d" directory, if any.
      IncludeOptional conf.d/*.conf
      IncludeOptional sites-enabled/*.conf
      

      Salve e feche o arquivo quando terminar de adicionar essa linha. Agora que você tem seus diretórios de virtual host prontos, você criará seu arquivo de virtual host.

      Comece criando um novo arquivo no diretório sites-available:

      • sudo vi /etc/httpd/sites-available/example.com.conf

      Adicione no seguinte bloco de configuração e mude o domínio example.com para o seu nome de domínio:

      /etc/httpd/sites-available/example.com.conf

      <VirtualHost *:80>
          ServerName www.example.com
          ServerAlias example.com
          DocumentRoot /var/www/example.com/html
          ErrorLog /var/www/example.com/log/error.log
          CustomLog /var/www/example.com/log/requests.log combined
      </VirtualHost>
      

      Isso dirá ao Apache onde encontrar o web root diretamente que contém os documentos web publicamente acessíveis. Ele também informa ao Apache onde armazenar erros e logs de solicitações para este site em particular.

      Salve e feche o arquivo quando você terminar.

      Agora que você criou os arquivos de virtual host, você os habilitará para que o Apache saiba como exibi-los aos visitantes. Para fazer isso, crie um link simbólico para cada virtual host no diretório sites-enabled:

      • sudo ln -s /etc/httpd/sites-available/example.com.conf /etc/httpd/sites-enabled/example.com.conf

      Agora, seu virtual host está configurado e pronto para servir o conteúdo. Antes de reiniciar o serviço Apache, vamos garantir que o SELinux está com as políticas corretas prontas para seus virtual hosts.

      Passo 5 — Ajustando as Permissões SELinux para Virtual Hosts (Recomendado)

      O SELinux é um módulo de segurança do Kernel Linux, que aumenta a segurança dos sistemas Linux. O CentOS 8 vem equipado com o SELinux configurado para funcionar com a configuração padrão do Apache. Como você alterou a configuração padrão configurando um diretório de log personalizado no arquivo de configuração de virtual hosts, você receberá um erro caso você tentar iniciar o serviço Apache. Para resolver isso, você precisa atualizar as políticas do SELinux para permitir que o Apache escreva nos arquivos necessários.

      Há diferentes maneiras de definir políticas baseadas nas necessidades do seu ambiente, uma vez que o SELinux permite que você personalize seu nível de segurança. Este passo irá abordar dois métodos de ajuste das políticas do Apache: universalmente e em um diretório específico. O ajuste das políticas em diretórios é mais seguro. Portanto, é a abordagem recomendada.

      Ajustando as Políticas do Apache Universalmente

      Definir a política do Apache universalmente irá informar ao SELinux para tratar de todos os processos de Apache de maneira idêntica, utilizando o Booleano httpd_unified. Embora essa abordagem seja mais conveniente, ela não lhe dará o mesmo nível de controle como uma abordagem que se concentra em uma política de arquivos ou diretórios.

      Execute o seguinte comando para definir uma política universal do Apache:

      • sudo setsebool -P httpd_unified 1

      O comando setsebool altera os valores Booleanos do SELinux. A flag -P atualizará o valor de inicialização, fazendo com que essa alteração persista em reinicializações. O httpd_unified é o Booleano que dirá ao SELinux para tratar todos os processos do Apache como sendo do mesmo tipo, então você o habilitou com um valor de 1.

      Ajustando as Políticas do Apache em um Diretório

      Configurando individualmente as permissões do SELinux para o diretório /var/www/example.com/log dará a você mais controle sobre suas políticas do Apache, mas também pode precisar de mais manutenção. Como essa opção não define políticas universalmente, você precisará definir manualmente o tipo de contexto para quaisquer novos diretórios de logs especificados em sua configuração de virtual host.

      Primeiro, verifique o tipo de contexto que o SELinux deu ao diretório /var/www/example.com/log:

      • sudo ls -dlZ /var/www/example.com/log/

      Este comando lista e mostra o contexto SELinux do diretório. Você receberá um resultado similar ao seguinte:

      Output

      drwxr-xr-x. 2 root root unconfined_u:object_r:httpd_sys_content_t:s0 6 Apr 23 23:51 /var/www/example.com/log/

      O contexto atual é o httpd_sys_content_t, que informa ao SELinux que o processo Apache pode ler apenas os arquivos criados neste diretório. Neste tutorial, você alterará o tipo de contexto do diretório /var/www/example.com/log para httpd_log_t. Este tipo permitirá ao Apache gerar e anexar aos arquivos de log de aplicações web:

      • sudo semanage fcontext -a -t httpd_log_t "/var/www/example.com/log(/.*)?"

      Em seguida, use o comando restorecon para aplicar essas alterações e persisti-las entre as reinicializações:

      • sudo restorecon -R -v /var/www/example.com/log

      A flag -R executa esse comando de maneira recursiva, o que significa que ele atualizará todos os arquivos existentes para usar o novo contexto. A flag -v exibirá as alterações de contexto que o comando fez. Você receberá a seguinte saída confirmando as alterações:

      Output

      Relabeled /var/www/example.com/log from unconfined_u:object_r:httpd_sys_content_t:s0 to unconfined_u:object_r:httpd_log_t:s0

      Você pode listar os contextos mais uma vez para ver as alterações:

      • sudo ls -dlZ /var/www/example.com/log/

      A saída reflete o tipo de contexto atualizado:

      Output

      drwxr-xr-x. 2 root root unconfined_u:object_r:httpd_log_t:s0 6 Apr 23 23:51 /var/www/example.com/log/

      Agora que o diretório /var/www/example.com/log está usando o tipo httpd_log_t, você está pronto para testar sua configuração de virtual host.

      Passo 6 — Testando o Virtual Host (Recomendado)

      Assim que o contexto SELinux for atualizado com qualquer método, o Apache poderá escrever no diretório /var/www/example.com/log. Agora, você pode reiniciar o serviço Apache com sucesso:

      • sudo systemctl restart httpd

      Liste o conteúdo do diretório /var/www/example.com/log para ver se o Apache criou os arquivos de registro:

      • ls -lZ /var/www/example.com/log

      Você receberá a confirmação de que o Apache foi capaz de criar os arquivos error.log e requests.log especificados na configuração de virtual host:

      Output

      -rw-r--r--. 1 root root system_u:object_r:httpd_log_t:s0 0 Apr 24 00:06 error.log -rw-r--r--. 1 root root system_u:object_r:httpd_log_t:s0 0 Apr 24 00:06 requests.log

      Agora que você tem seu virtual host configurado e as permissões do SELinux atualizadas, o Apache agora irá servir seu nome de domínio. Você pode testar isso navegando para http://example.com, onde você deve ver algo assim:

      Success! O virtual host example.com está funcionando!

      Isso confirma que seu virtual host está configurado e exibindo conteúdo. Repita os Passos 4 e 5 para criar novos virtual hosts com as permissões SELinux para domínios adicionais.

      Conclusão

      Neste tutorial, você instalou e gerenciou o servidor web Apache. Agora que você tem seu servidor Web instalado, você tem muitas opções para o tipo de conteúdo que você pode oferecer e as tecnologias que você quiser usar para criar uma experiência mais rica.

      Se você quiser construir uma pilha de aplicação mais completa, você pode dar uma olhada neste artigo sobre como configurar uma pilha LAMP no CentOS 8.



      Source link

      Cómo crear un servidor de Minecraft en Ubuntu 18.04


      El autor seleccionó el Tech Education Fund para que recibiese una donación como parte del programa Write for DOnations.

      Introducción

      Minecraft es un popular juego de video en espacio aislado. Su lanzamiento tuvo lugar originalmente en 2009 y, en él, los jugadores pueden hacer construcciones, explorar espacios, producir creaciones y sobrevivir en un mundo generado por bloques en 3D. Hasta finales de 2019, fue el segundo video juego de mayor venta de todos los tiempos. A través de este tutorial, creará su propio servidor de Minecraft para poder jugar con sus amigos. Específicamente, instalará los paquetes de software necesarios para ejecutar Minecraft, configurará el servidor para su ejecución y luego implementará el juego.

      De forma alternativa, puede explorar Minecraft en un solo clic con Minecraft Java Edition Server de un solo clic de DigitalOcean como otra ruta de instalación.

      En Este tutorial se utiliza la versión de Java de Minecraft. Si adquirió su versión de Minecraft a través de Microsoft App Store, no podrá conectarse a este servidor. La mayoría de las versiones de Minecraft que se adquieren en consolas de juegos, como PlayStation 4, Xbox One o Nintendo Switch también son de Microsoft. Estas consolas tampoco pueden conectarse al servidor creado en este tutorial. Puede obtener la versión de Java de Minecraft aquí.

      Requisitos previos

      Para completar los pasos de esta guía, necesitará lo siguiente:

      • Un servidor con una nueva instalación de Ubuntu 18.04, un non-root user con privilegios sudo y SSH habilitado. Puede seguir esta guía para inicializar su servidor y completar estos pasos. Minecraft puede hacer uso intensivo de recursos, así que téngalo en cuenta cuando seleccione el tamaño de su servidor. Si recurre a DigitalOcean y necesita más recursos, siempre puede cambiar el tamaño de su Droplet para añadir más CPU y RAM.

      • Una copia de Minecraft Java Edition instalada en una computadora local con Mac, Windows o Linux.

      Paso 1: Instalar los paquetes de software necesarios

      Una vez inicializado su servidor, su primer paso será instalar Java; necesitará que ejecute Minecraft.

      Actualice el índice de paquetes del administrador de paquetes APT:

      A continuación, instale la versión 8 de OpenJDK de Java; específicamente, el JRE sin encabezado. Esta es una versión mínima de Java en la que se elimina el apoyo para las aplicaciones GUI. Esto hace que sea ideal para ejecutar aplicaciones Java en un servidor:

      • sudo apt install openjdk-8-jre-headless

      También debe usar un software denominado screen para crear sesiones de servidor desacoplables. screen le permite crear una sesión terminal y desacoplarla de él, y dejar el proceso iniciado en ejecución. Esto es importante porque si inicia su servidor y luego cierra su terminal, esto terminaría la sesión y detendría su servidor. Instale screen ahora:

      Ahora que instaló Java, descargará el servidor de Minecraft desde el sitio web de Minecraft.

      Paso 2: Descargar la versión más reciente de Minecraft

      Ahora, debe descargar la versión actual del servidor de Minecraft. Puede hacerlo dirigiéndose al sitio web de Minecraft y copiando el enlace de descarga minecraft_server. X.X.X.jar​​, donde las X representan la versión más reciente del servidor.

      Ahora puede usar wget y el enlace que copió para descargar el servidor:

      • wget https://launcher.mojang.com/v1/objects/bb2b6b1aefcd70dfd1892149ac3a215f6c636b07/server.jar

      Si desea actualizar su servidor de Minecraft o si quiere ejecutar diferentes versiones de Minecraft, cambie el nombre de server.jar a minecraft_server_1.15.2jar, de modo que coincidan los números de versión resaltados con la versión que acaba de descargar:

      • mv server.jar minecraft_server_1.15.2.jar

      Si quiere descargar una versión anterior de Minecraft, puede encontrarla archivada en mcversions.net. Sin embargo, este tutorial se centrará en la versión reciente actual. Ahora que realizó la descarga, comenzaremos a configurar su servidor de Minecraft.

      Paso 3: Configurar y ejecutar el servidor de Minecraft

      Ahora que descargó el jar de Minecraft, estará listo para ejecutarlo.

      Primero, inicie una sesión de screen ejecutando el comando screen:

      Cuando haya leído el banner que apareció, presione la barra SPACE. screen le presentará una sesión terminal como es normal. Ahora, esta sesión es desacoplable, lo cual significa que usted podrá iniciar un comando aquí y dejarlo en ejecución.

      Ahora puede realizar su configuración inicial. No se alarme cuando este comando siguiente produzca un error. Minecraft ha diseñado su instalación de esta manera para que los usuarios deban aceptar por primera vez el acuerdo de licencia de la empresa. A continuación, hará lo siguiente:

      • java -Xms1024M -Xmx1024M -jar minecraft_server_1.15.2.jar nogui

      Antes de examinar el resultado de este comando, veremos en mayor detalle todos estos argumentos de línea de comandos con los que se aplican ajustes a su servidor:

      • Xms1024M: con esto se configura el servidor para comenzar a ejecutarse con 1024 MB o 1 GB de RAM. Puede aumentar este límite si quiere que su servidor empiece con más RAM. Tanto “M” como megabytes como “G” para gigabytes son opciones compatibles. Por ejemplo: Xms2G iniciará el servidor con 2 gigabytes de RAM.

      • Xmx1024M: con esto se configura el servidor para usar, como máximo, 1024 M de RAM. Puede aumentar este límite si quiere que su servidor se ejecute con un tamaño más grande y permitir más jugadores, o si siente que su servidor se ejecuta lentamente.

      • jar: este indicador especifica el archivo jar del servidor que se ejecutará.

      • nogui: indica al servidor que no inicie un GUI, ya que este es un servidor y no tiene una interfaz de usuario gráfica.

      La primera vez que ejecute este comando, que normalmente inicia su servidor, generará el siguiente error:

      Output

      [22:05:31] [22:05:31] [main/ERROR]: Failed to load properties from file: server.properties [22:05:31] [main/WARN]: Failed to load eula.txt [22:05:31] [main/INFO]: You need to agree to the EULA in order to run the server. Go to eula.txt for more info.

      Estos errores se generaron porque el servidor no pudo encontrar dos archivos necesarios para su ejecución: EULA (acuerdo de licencia de usuario final), que se encuentra en eula.txt, y el archivo de configuración server.properties. Afortunadamente, dado que el servidor no pudo encontrar estos archivos, los creó en su directorio de trabajo activo actual.

      Primero, abra eula.txt en nano o su editor de texto favorito:

      Dentro de este archivo, verá un enlace con el EULA de Minecraft. Copie la URL:

      ~/eula.txt

      #By changing the setting below to TRUE you are indicating your agreement to our EULA (https://account.mojang.com/documents/minecraft_eula).
      #Tue Mar 24 22:05:31 UTC 2020
      eula=false
      

      Abra la URL en su navegador web y lea el acuerdo. Luego, vuelva al editor de texto y encuentre la última línea en eula.txt. Aquí, cambie eula=false a eula=true. Ahora, guarde y cierre el archivo.

      Ahora que aceptó el EULA, es momento de configurar el servidor según sus especificaciones.

      En su directorio de trabajo actual, también encontrará el archivo server.properties que acaba de crear. Este archivo contiene todas las opciones de configuración de su servidor de Minecraft. Puede encontrar una lista detallada de todas las propiedades del servidor en el sitio Wiki oficial de Minecraft. Modifique este archivo con sus ajustes preferidos antes de iniciar su servidor. En este tutorial se abarcarán las propiedades fundamentales:

      El archivo aparecerá de la siguiente manera:

      ~/server.properties

      #Minecraft server properties
      #Thu Apr 30 23:42:29 UTC 2020
      spawn-protection=16
      max-tick-time=60000
      query.port=25565
      generator-settings=
      force-gamemode=false
      allow-nether=true
      enforce-whitelist=false
      gamemode=survival
      broadcast-console-to-ops=true
      enable-query=false
      player-idle-timeout=0
      difficulty=easy
      spawn-monsters=true
      broadcast-rcon-to-ops=true
      op-permission-level=4
      pvp=true
      snooper-enabled=true
      level-type=default
      hardcore=false
      enable-command-block=false
      max-players=20
      network-compression-threshold=256
      resource-pack-sha1=
      max-world-size=29999984
      function-permission-level=2
      rcon.port=25575
      server-port=25565
      server-ip=
      spawn-npcs=true
      allow-flight=false
      level-name=world
      view-distance=10
      resource-pack=
      spawn-animals=true
      white-list=false
      rcon.password=
      generate-structures=true
      online-mode=true
      max-build-height=256
      level-seed=
      prevent-proxy-connections=false
      use-native-transport=true
      motd=A Minecraft Server
      enable-rcon=false
      

      Veamos algunas de las propiedades más importantes en esta lista:

      • difficulty (por defecto, easy): establece la dificultad del juego, como la cantidad de daño que se maneja y cómo afectan los elementos al jugador. las opciones son peaceful, easy, normal y hard.

      • gamemode (por defecto, survival): configura el modo de juego. Las opciones son survival, creative, adventure y spectator.

      • level-name (por defecto, world): configura el nombre de su servidor que aparecerá en el cliente. Es posible que se deban indicar los caracteres como el apóstrofo escribiendo antes una diagonal invertida.

      • motd (por defecto, A Minecraft Server): mensaje que se muestra en la lista de servidores del cliente de Minecraft.

      • pvp (por defecto, true): permite un combate entre jugadores. Si se establece un valor true, los jugadores podrán involucrarse en un combate y producirse daño mutuamente.

      Cuando haya configurado las opciones que quiere, guarde y cierre el archivo.

      Ahora que cambió el parámetro de EULA a true y configuró sus ajustes, puede iniciar su servidor con éxito.

      Como la última vez, iniciaremos su servidor con 1024 MB de RAM. Solo que ahora también concederemos a Minecraft la capacidad de usar hasta 4G de RAM si lo necesita. Recuerde que está permitido ajustar este número para poder ajustarse a las limitaciones de su servidor o las necesidades de sus usuarios:

      • java -Xms1024M -Xmx4G -jar minecraft_server_1.15.2.jar nogui

      La inicialización puede tardar un momento. Pronto, su nuevo servidor de Minecraft comenzará a producir un resultado similar a este:

      Output

      [21:08:14] [Server thread/INFO]: Starting minecraft server version 1.15.2 [21:08:14] [Server thread/INFO]: Loading properties [21:08:14] [Server thread/INFO]: Default game type: SURVIVAL [21:08:14] [Server thread/INFO]: Generating keypair [21:08:15] [Server thread/INFO]: Starting minecraft server on *:25565

      Cuando el servidor esté activo, verá el siguiente resultado:

      Output

      [21:15:37] [Server thread/INFO]: Done (30.762s)! For help, type "help"

      Ahora, su servidor está en ejecución y usted accedió al panel de control del administrador del servidor. Ahora escriba help:

      Un resultado como este aparecerá:

      Output

      [21:15:37] [Server thread/INFO]: /advancement (grant|revoke) [21:15:37] [Server thread/INFO]: /ban <targets> [<reason>] [21:15:37] [Server thread/INFO]: /ban-ip <target> [<reason>] [21:15:37] [Server thread/INFO]: /banlist [ips|players] ...

      Desde esta terminal, puede ejecutar comandos administrador y controlar su servidor Minecraft. Ahora, usaremos screen para mantener el servidor nuevo en ejecución, incluso después de iniciar sesión. Luego, puede conectarse a su cliente de Minecraft e iniciar un juego nuevo.

      Paso 4: Mantener el servidor ejecutándose

      Ahora que está listo su servidor, le convendrá que siga ejecutándose aun después de desconectarse de su sesión de SSH. Debido a que utilizó screen anteriormente, puede desacoplarse de esta sesión presionando Ctrl + A + D. Ahora, regresará a su shell original.

      Ejecute este comando para ver todas las sesiones de screen:

      Obtendrá un resultado con el ID de su sesión, que necesitará para reanudar esa sesión:

      Output

      There is a screen on: 26653.pts-0.minecraft (03/25/20 21:18:31) (Detached) 1 Socket in /run/screen/S-root.

      Para reanudar su sesión, pase el indicador -r al comando screen y luego ingrese el ID de su sesión:

      Cuando esté listo para cerrar la sesión del servidor, asegúrese de desacoplarse de ella con Ctrl + A + D y luego cierre la sesión.

      Paso 5: Establecer conexión con su servidor desde el cliente de Minecraft

      Ahora que su servidor está listo y en ejecución, conéctese a él a través del cliente de Minecraft. ¡Con esto podrá jugar!

      Ejecute su copia de Minecraft Java Edition y seleccione Multiplayer en el menú.

      Selección de Multiplayer en el menú

      Luego, deberá añadir un servidor con el cual establecerá conexión. Haga clic en el botón Add Server.

      Selección del botón Add Server

      En la pantalla Edit Server Info que aparece, asigne un nombre a su servidor y escriba la dirección de IP de su servidor. Esta es la misma dirección IP que utilizó para conectarse a través de SSH.

      Asignación de un nombre a su servidor e introducción de la dirección IP

      Una vez que haya ingresado el nombre y la dirección IP de su servidor, accederá nuevamente a la pantalla del modo Multiplayer, donde ahora su servidor aparecerá en la lista.

      Selección del servidor y de la opción Join Server

      Desde ahora, su servidor siempre aparecerá en esta lista. Selecciónelo y haga clic en Join Server.

      ¡Disfrute del juego!

      ¡Ya se encuentra en su servidor y está listo para jugar!

      Conclusión

      Así, dispondrá de un servidor de Minecraft en ejecución en Ubuntu 18.04 para poder jugar con todos sus amigos. Diviértase abriéndose paso, haciendo creaciones y sobreviviendo en un duro mundo en 3D. Y recuerde: busque los “griefers”.



      Source link