Formulario Angular 7 en producción : estoy tratando de poner en funcionamiento un formulario que me envia datos al correo con nodemailer
 en localhost:3000 me funciona bien pero al momento de cargar mi proyecto en el servidor con godaddy no logro ponerlo a funcionar este es mi código

una app en la raiz del proyecto llamada nodeMensajeria/src/node modules, app.js y configMensaje.js

[mira la raiz de mi proyecto][1]
app.js

    const express = require('express');
    const cors = require('cors');
    const bodyParser = require('body-parser');
    const configMensaje = require('./configMensaje');

    const app = express();
    app.use(bodyParser.json());
    app.use(cors())

    app.post('/formulario', (req, res) => {
      configMensaje(req.body);
      res.status(200).send();
    })

    app.listen(3000, () => {
      console.log('Servidor corriendo')
    });

configMensaje.js

    const nodemailer = require('nodemailer');
    
    module.exports = (formulario) => {
      var transporter = nodemailer.createTransport({
        service: 'gmail',
        auth: {
          user: 'correoorigen', 
          pass: 'contraseña' 
        }
      });
    
      const mailOptions = {
        from: `"${formulario.nombre} 👻" <${formulario.email}>`,
        to: 'correodestino', // 
        subject: formulario.asunto,
        html: `
        <strong>Nombre:</strong> ${formulario.nombre} <br/>
        <strong>Asunto:</strong> ${formulario.asunto} <br/>
        <strong>E-mail:</strong> ${formulario.email}  <br/>
        <strong>Número de contacto:</strong> ${formulario.contacto}  <br/>
        <strong>Mensaje:</strong> ${formulario.mensaje}
        `
      };
    
      transporter.sendMail(mailOptions, function (err, info) {
        if (err)
          console.log(err)
        else
          console.log(info);
      });
    }

el servicio message.service.ts

    import { Injectable } from '@angular/core';
    import { HttpClient } from '@angular/common/http'
    
    @Injectable({
      providedIn: 'root'
    })
    export class MessageService {
    
      constructor(private _http: HttpClient) { }
    
      sendMessage(body) {
        return this._http.post('http://107.180.59.131:3000/formulario', body);
      }
    }
Estoy usando la ip de mi dominio

    app.component.ts
    
    import { Component, OnInit } from '@angular/core';
    import { MessageService } from '../services/message.service';
    
    import swal from 'sweetalert';
    import { VirtualTimeScheduler } from 'rxjs';
    
    @Component({
      selector: 'app-form',
      templateUrl: './form.component.html',
      styleUrls: ['./form.component.scss']
    })
    export class FormComponent implements OnInit {
    
     
    
      constructor(public _MessageService: MessageService) { }
    
      contactForm(form) {
        this._MessageService.sendMessage(form).subscribe(() => {
          swal("Formulario de contacto", "Mensaje enviado correctamente", 'success');
    
        });
    
      }
    
    
    
      ngOnInit() {
        
      }
    
    }

En el servidor he instalado nodejs y pm2 para usar pm2 start app.js por medio de ssh y obtengo

[Me muestra que que la app esta ejecutada][2]






 


  


  
pero al momento de enviar el formulario en producción me muestra el siguiente error 

Failed to load resource: net::ERR_CONNECTION_TIMED_OUT
main.5cb5f6b8477568c35bd7.js:1 ERROR e {headers: t, status: 0, statusText: "Unknown Error", url: "http://107.180.59.131:3000/formulario", ok: false, …}

[mira el error][3]


  [1]: https://i.stack.imgur.com/6jyBH.jpg
  [2]: https://i.stack.imgur.com/KczRe.jpg
  [3]: https://i.stack.imgur.com/IJjvW.jpg

espero me puedan ayudar con este problema amigos

saludos,