Các ứng dụng tập trung .NET chỉ dành cho hệ điều hành Windows cho đến nay, nhưng bây giờ Microsoft đã giới thiệu một ứng dụng đa nền tảng mới gọi là Mono cho phép thực thi ứng dụng phát triển dưới nền tảng .NET trong môi trường Linux bằng cách tạo ấn tượng như thể chúng ta đang chạy gói Linux thay vì thực thi file .exe.
Mono
Mono là tiện ích mã nguồn mở cho phép nhà phát triển thực thi các ứng dụng tập trung .NET trên các nền tảng khác như Mac hoặc Linux vì nó cung cấp gói cài đặt cho nền tảng Windows để biên dịch và thực thi các assembly .NET trên Windows OS mà không cần cài đặt Visual Studio IDE hoặc .NET Framework SDK. Do đó, chúng ta có thể xây dựng các assembly production-ready, real-time sử dụng Windows Forms, LINQ, XML web services, ADO.NET và ASP.NET bằng cách tận dụng các namespace CLR cốt lõi hiện có dưới Mono. Trước hết, tải nhị phân Mono dùng tiện ích wget và thực thi chuỗi lệnh sau để cấu hình đúng:
wget --no-check-certificate https://raw.github.com/nathanb/iws-snippets/master/mono-install-scripts/ubuntu/install_mono-3.0.sh chmod 755 install_mono-3.0.sh ./install_mono-3.0.sh
Ngoài ra, cài gói MCS thay thế để biên dịch binary .NET như sau;
root/kali:~/ sudo apt-get install mcs
Biên Dịch Mã C#
Cơ sở hạ tầng ứng dụng console Mono gần như tương tự ứng dụng console C#.NET truyền thống. Để phát triển ứng dụng console Mono đầu tiên (test.cs), mở trình soạn thảo mã như VIM và gõ mã sau.
using System;
namespace test {
class test{
public static void Main(string[] args) {
System.Console.WriteLine("C# app Compiled on Kali Linux");
}
}
}
Sau đó, mở Terminal và chạy các lệnh sau để biên dịch mã.
root/kali:~/ mcs test.cs root/kali:~/ ls test.cs test.exe
Lệnh trên sẽ tạo file thực thi giống Windows. Bây giờ chạy lệnh ./test.exe hoặc mono test.exe để chạy binary C#; Ảnh chụp màn hình dưới tóm tắt mọi thứ chúng ta đã làm.
