How to setup mobile-first-cli to deploy on bluemix behind a corporate proxy - ibm-mobilefirst

I'm using Mobile Foundation on IBM Bluemix and I'm facing problems in setup IBM MobileFirst-CLI to deploy adapters and apps throw my corporate proxy.
In time, I'm on a macOS with the CLI version below:
mfpdev -v
8.0.0-2016070716
At this time, every time I have to interact with the server in have to connect to it using my phone tethering. Please help, I'm running out of all my data plan.
The actual error:
$ mfpdev adapter deploy
Error: Cannot connect to server 'mfp-bluemix-dev' at 'https://xxxx-server.mybluemix.net:443'.
Reason: Missing runtime configuration details.: connect ECONNREFUSED 158.99.999.99:443
ps: address and ip of server obfuscated.
Best regards,
Bernardo Baumblatt.

At the moment, MFP Dev CLI does not have the feature to configure a proxy. However, if all communications in your enterprise are routed through the corporate proxy, and the proxy can connect to IBM Bluemix, there should not be a problem.
You can submit a Request for Enhancement to add proxy feature to MFP Dev CLI.

What Pat said in his comment is correct. I suspect that you have two issues to address:
Your corporate proxy must allow access to your server's HTTP and HTTPS endpoints (9080 and 9443). I've also heard of cases where the personal firewall on the individual's workstation has interfered.
You are running a VERY old version of the CLI. Assuming your instance of Foundation Server on Bluemix isn't that old, you'll need to upgrade to interact with it properly. I strongly suggest that you upgrade to the latest version via npm -g install mfpdev-cli.

Related

How to install dev certs and run as HTTPS on non-dev machine?

I am publishing my ASP.NET Core 2.2 to a local location, then zipping it and trying to run on another machine. The other machine when launching does not show listening on HTTPS, only HTTP.
This is making the app not work. Locally on my dev machine I get both endpoints. I understand that I have to possibly use dotnet dev-certs https --trust or similar command but since my build is self-contained I really do not want to install the .NET Core SDK on every machine I run this on just to get that command.
How can I make my app run with endpoint on the other machine with the least hassle?
Update:
The following message is also shown in the launch console window:
warn: Microsoft.AspNetCore.HttpsPolicy.HttpsRedirectionMiddleware[3]
Failed to determine the https port for redirect.

JCosole can't connect to glassfish / change address of http listeners

I run a FreeBSD 11.0 server at home, in my private network. I wanted to learn some Java EE, so I installed GlassFish 4.1 at the server. After creating a domain (domain1), I wanted to login in via JConsole. But I get this error message "Connection failed: non-JRMP server at remote endpoint". The ip of the server is 19.168.178.91, so I tried to connect to "192.168.178.91:8686" is that roight?
My other issue is, in the book, which I'm using, they install glassfish at the same machine, which is used use to programm, so they changed the address of the three http listeners, of the IIOP-listener and of the jmx-connector from 0.0.0.0 to 127.0.0.1. Should I change it to the ip of the server or just leave it like it is?
Thank you in advance

Remote Docker Host Authentication

Hi I'm currently working on a side project. In this project I'll have a central server that will need to connect to several remote docker daemons. My problem is with authentication.
Given that the project will be hosted on Digitalocean, my first thought suggested that I'll accept only connections from the private networking interface. The problem is that that interface is accessible by all other servers in the same datacenter.
Second thought is to allow only requests from the central server using the DOCKER_HOST config, the problem is that if I understand correctly the if the private IP of the centeral server get known, the IP can be spoofed.
Third thought is to enable TLS ( https://docs.docker.com/articles/https/ ), I've never dealt with those things before and the tutorial is unclear for me, I lack the knowledge of the terminologies and it's being used heavily.
So basically the problem is that I have a central client and multiple remote docker hosts, what is the best way to connect to them? Thank you.
EDIT: I managed to solve the problem using HTTP authentication by running nginx as a proxy in front of the docker daemon.
My understand is you are trying to build a docker cluster, which can manage all nodes from one single central server.
this is very likely docker's Docker Swarm project, from their doc, they give some simple idea how this is work:
open a TCP port on each node for communication with the swarm manager
install Docker on each node
create and manage TLS certificates to secure your swarm
Sorry this should post as a comment but I do not have enough rep to do that.

Cannot connect to meteor server running on virtualbox when using force-ssl

I have a windows 8.1 machine running ubuntu 14.x on a virtualbox. I'm running meteor inside that virtualbox. I've bridged the connection and turned off the firewall on both machines. I'm able to connect to the internet from the virtual box, and I can telnet from the windows host into the ubuntu machine.
I can also connect to meteor apps that are not using the force-ssl package; however, I CANNOT connect to meteor apps that are using force-ssl!
If I run "meteor remove force-ssl" I can connect to the app. Any thoughts? Thanks.
EDIT - by connect to the app, I mean "http://[ip_address_of_guest]:3000/" in a browser on the host machine. I've tried both http and https.
I'm new to Meteor but, from this documentation, it looks to me like you are seeing the intended behaviour ...
"This package, part of Webapp, causes Meteor to redirect insecure
connections (HTTP) to a secure URL (HTTPS). Use this package to ensure
that communication to the server is always encrypted to protect users
from active spoofing attacks.
To simplify development, unencrypted connections from localhost are
always accepted over HTTP.
Application bundles (meteor bundle) do not include an HTTPS server or
certificate. A proxy server that terminates SSL in front of a Meteor
bundle must set the standard x-forwarded-proto header for the
force-ssl package to work.
Applications deployed to meteor.com subdomains with meteor deploy are
automatically served via HTTPS using Meteor's certificate."
This answer clarifies.
I am about to try the Digital Ocean guide, "How To Deploy a Meteor.js Application on Ubuntu 14.04 with Nginx", myself to see if it correctly documents the required set up steps. I'll update with my results.

Failed to deploy the application to Worklight server

I installed worklight 6.1.0.1 on eclipse kepler from marketplace. I am getting the following error when I tried to build the application.
" Failed to deploy the application to Worklight server: please verify that the Worklight server is started and reachable.Connection to - 192.168.112.1:10080 failed. (Permission denied: connect)."
We send SOAP requests from the adapter. The backend services are only accessible if connected to VPN. I have connected to VPN and deployed the application. few JS files like dojo.js are pointing to local IP. For building the project to VPN IP , I right clicked the project and Run As>Build Settings and deploy targets. In the window that is popped up, I gave the VPN IP and cliked Ok. Again I right clicked project Run As>build all and deploy all. But still its being pointing to local IP 192.168.112.1:10080 and getting the error mentioned above when I try to deploy the application.
Even if I open project on worklight project console, its redirecting to local IP.
I think some ideas are mixed here.
Your application will be running in a local Worklight test server, that as part of Worklight Studio is placed in your development environment (localhost). If your adapters must use the VPN to reach the backend services, then you must only make sure the your-adapter.xml referes to the correct HTTP host (i.e. an IP address available through the VPN).
You should not need to change your local server address, i.e. if you double-click the Worklight Development Server in Servers view, the Host name field should be "localhost" (without quotes, that's the default value), or preferrable a local IP, may be 192.168.112.1 (or whatever local IP you have). If after trying all this, that still don't work, I'd change that to your VPN IP, but I believe that's not necessary.
One thing you may not be aware of is that when doing a build and deploy to Worklight Development Server, and you have the host name set to "localhost" the Worklight Studio will "guess" your IP, so that's probably the problem you are facing.
In a nutshell, what I'd do is:
1. Make sure your server host name is still localhost (or a fixed local IP address)
2. Make sure your adapter.xml file(s) refer to a correct IP or fully qualified host name in the VPN, so you can reach them.
3. Run As -> Build All and Deploy
4. Test
What I'm saying here is if you want your app built using the VPN IP, then you don't need to do it through Build Settings and Deploy Target, but just going to Servers View, double-click on Worklight Development Server and then set the Host name to the IP you want. The Build All and Deploy will do the rest for you.