developing an IIS webapp on linux - linux

I know linux does not support IIS, since it requires Windows to exist on your machine.
I'm developing a .net core application, that needs to run in the end on an IIS server. This needs to stay as is, since it's the clients application I'm developing.
Currently my workstation is running Windows, so developing and hosting the application on local server is easy and straight forward using IISExpress.
To be honest I don't like Windows, since it has so many unknown parts running and doing weird stuff, is pretty slow and I don't have the customizability that I want, so I would prefer to use a linux based operating system.
There comes the problem - running IIS based applications is not possible on a local maschine using a linux operating system.
My first idea was to create an IIS docker and publish my application there, but that won't also work, since docker uses parent operating system kernel and IIS docker app requires a Windows based parent system.
The second idea was to use an external server, host IIS there and publish (or remote develop) the app there, but that gives me another system to worry about.
My ideal solution would be fully localized. IIS app running on the same machine.
Does anyone have experience with similar situations?
What would be the best solution here?

Related

Is installing compiler on a virtual pc vs desktop more secure?

My supervisor is pushing developers to install any compiler (Visual studio etc) on a virtual machine vs desktop. His argument is, it is more secure to put compiler on virtual in case desktops are hacked. But if i can access virtual machine from my desktop then hacker can too. I am just trying to understand why it is more secure to put compiler on virtual. Thank you.
If virtual machine is hosted in the cloud(public/private/internal) then probably somebody else is managing security in the cloud. That case probably it is almost certain that it will provide more security then bare desktop.
However we are relying on the somebody.
If your VM is running on desktop hypervisor, then I would prefer doing all work on the VM. In hacking scenario, I would still have my desktop, while VM may be gone.
I have seen something similar when Ransomware attack happened, all windows desktop were gone including local filesystem/vms, but only VM running Windows were affected, and hypervisor and local filesystem were all good if running non-windows host os.
Not sure if it answer your question, but putting my perspective on what I have seen so far in the industry.

Linux application over RDP (FreeRDP, XRDP) / Apache Guacamole

I have started lately using Apache Guacamole.
The problem I am facing is that I want to find a way to have Linux Remote Applications over RDP ( as windows RemoteApp does).
Is there any way to have just a single Linux application using xrdp or freerdp?
I have tried the initial_program option but this brings the whole desktop with the application running.
If none of them works is there any other way?
As far as I understand, in Guacamole, only via RDP there might be a chance to bring a single Linux app. Neither VNC nor SSH can be used for that purpose.

Is there a Configuration Software for Linux Servers on the market?

I'm currently working on a Linux (Web-) Server configuration tool, which will allow you to easily manage all Your server-configurations in an graphical intuitive solution.
My tool is written in c# and is designed for windows.
The system will connect to a remote Linux-based Server over SSH and will then be able to configure the Domains/Subdomains, email accounts, ftp accounts, php/ settings, nginx/apache settings ... (all remote per ssh)
no aditional software/configuration needed
the system will be able to read the current config and will allow you to easily manage the configuration
I've made an short video of the product: http://www.youtube.com/watch?v=E8buUyOvZrQ
I came from froxlor(php server configuration), which I don't like at all. Because I'm using the server for myself and don't the master/client concept.
So my Question is:
Is there an equivalent Product already on the market?
Because if so, I can stop working on my own product.
Edit
Is there a tool wich works without client Installation? (not php or in any way web-based)
Webmin is a web-based interface for system administration for Unix:
http://www.webmin.com/
I built something similar awhile ago and it was a basic WinForms dashboard that managed Linux boxes by interfacing with them via SharpSSH. This was awhile ago, but judging by their soure forge page it is still maintained.

Start or stop a linux service on remote machine by a web-site

I want to develop a web application which will be able to run the linux services at remote machine. So what technology i must use and what are the steps i need to perform.
don't develop one, use webmin instead

Develop on Windows and running on linux machines

I need to develop applications for Linux but I don't want to either program on Linux (I already have all my "precious" tools setted up) or test it on Windows using some kind of POSIX for Windows and hoping that if runs well on that runs well on real Linux.
What's the better choice? Preferentially I want to use Eclipse IDE for compile/run/debug and run my programs on a Linux distribution that is running on a local VM or remote.
Right now I'm using a similar approach, but for Java Web Service testing on a remote server. Perhaps that's the way to go?
Edit:
In order to beter explain what I want, here is the steps that I want to follow:
Program in C, for POSIX compliant systems, using Eclipse on Windows
Make small tests on Windows, perhaps using Cygwin (this is not mandatory it's just to be quicker)
From my Windows Eclipse, I want to run/debug my application on a real Linux environment (could be a VM or a remote machine) and, preferentially, redirect the application stdout to my computer. The Linux machine only exists in order to garantee that everything runs ok, no need of even open it.
One thing that I didn't mentioned: all of the applications are command line, no need for GUI, just input from a shell and read the output.
First, install Linux in a virtual PC like VirtualBox or VirtualPC or something from vmware.
Then configure Eclipse for remote development. That allows you to run tools (like the debugger, the compiler suite, etc) on Linux from your Windows desktop inside of Eclipse. You edit the files just like you're used to, you debug as if the app was running local on Windows, etc. Eclipse will do the plumbing.
Remote server is the way to go. But most people have a powerful enough machine to run a 32-bit Linux distro in Virtualbox which is better than a real remote server because you have full control of setup and config.
But install cygwin including GCC and use that to run initial compile (and maybe unit tests) locally. Also, do use Valgrind on your Linux VM to help you produce cleaner code.

Resources