AWS SDK untuk JavaScript V2 telah mencapai akhir dukungan. Kami menyarankan Anda bermigrasi ke AWS SDK untuk JavaScript v3. Untuk detail dan informasi tambahan tentang cara bermigrasi, silakan lihat pengumuman
Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Bekerja dengan Grup Keamanan di Amazon EC2
Contoh Node.js kode ini menunjukkan:
Cara mengambil informasi tentang grup keamanan Anda.
Cara membuat grup keamanan untuk mengakses instans Amazon EC2.
Cara menghapus grup keamanan yang ada.
Skenario
Grup keamanan Amazon EC2 bertindak sebagai firewall virtual yang mengontrol lalu lintas untuk satu atau lebih instance. Anda menambahkan aturan ke setiap grup keamanan untuk mengizinkan lalu lintas ke atau dari instans terkait. Anda dapat mengubah aturan untuk grup keamanan kapan saja; aturan baru secara otomatis diterapkan ke semua instance yang terkait dengan grup keamanan.
Dalam contoh ini, Anda menggunakan serangkaian Node.js modul untuk melakukan beberapa operasi Amazon EC2 yang melibatkan grup keamanan. Node.js Modul menggunakan SDK JavaScript untuk mengelola instans dengan menggunakan metode berikut dari kelas klien Amazon EC2:
Untuk informasi selengkapnya tentang grup keamanan Amazon EC2, lihat Grup Keamanan Amazon EC2 untuk Instans Linux di Panduan Pengguna Amazon EC2 atau Grup Keamanan Amazon EC2 untuk Instans Windows di Panduan Pengguna Amazon EC2.
Tugas Prasyarat
Untuk mengatur dan menjalankan contoh ini, pertama-tama selesaikan tugas-tugas ini:
Instal Node.js. Untuk informasi lebih lanjut tentang menginstal Node.js, lihat situs Node.js web
. Buat file konfigurasi bersama dengan kredenSIAL pengguna Anda. Untuk informasi selengkapnya tentang menyediakan file kredenSIAL bersama, lihatMemuat Kredensial di Node.js dari File Kredensial Bersama.
Menjelaskan Grup Keamanan Anda
Buat Node.js modul dengan nama fileec2_describesecuritygroups.js. Pastikan untuk mengkonfigurasi SDK seperti yang ditunjukkan sebelumnya. Untuk mengakses Amazon EC2, buat objek AWS.EC2 layanan. Buat objek JSON untuk diteruskan sebagai parameter, termasuk ID grup untuk grup keamanan yang ingin Anda jelaskan. Kemudian panggil describeSecurityGroups metode objek layanan Amazon EC2.
// Load the AWS SDK for Node.js var AWS = require("aws-sdk"); // Set the region AWS.config.update({ region: "REGION" }); // Create EC2 service object var ec2 = new AWS.EC2({ apiVersion: "2016-11-15" }); var params = { GroupIds: ["SECURITY_GROUP_ID"], }; // Retrieve security group descriptions ec2.describeSecurityGroups(params, function (err, data) { if (err) { console.log("Error", err); } else { console.log("Success", JSON.stringify(data.SecurityGroups)); } });
Untuk menjalankan contoh, ketik berikut ini di baris perintah.
node ec2_describesecuritygroups.js
Kode sampel ini dapat ditemukan di sini GitHub
Membuat Grup Keamanan dan Aturan
Buat Node.js modul dengan nama fileec2_createsecuritygroup.js. Pastikan untuk mengkonfigurasi SDK seperti yang ditunjukkan sebelumnya. Untuk mengakses Amazon EC2, buat objek AWS.EC2 layanan. Buat objek JSON untuk parameter yang menentukan nama grup keamanan, deskripsi, dan ID untuk VPC. Berikan parameter ke createSecurityGroup metode.
Setelah berhasil membuat grup keamanan, Anda dapat menentukan aturan untuk mengizinkan lalu lintas masuk. Buat objek JSON untuk parameter yang menentukan protokol IP dan port masuk tempat instance Amazon EC2 akan menerima lalu lintas. Berikan parameter ke authorizeSecurityGroupIngress metode.
// Load the AWS SDK for Node.js var AWS = require("aws-sdk"); // Load credentials and set region from JSON file AWS.config.update({ region: "REGION" }); // Create EC2 service object var ec2 = new AWS.EC2({ apiVersion: "2016-11-15" }); // Variable to hold a ID of a VPC var vpc = null; // Retrieve the ID of a VPC ec2.describeVpcs(function (err, data) { if (err) { console.log("Cannot retrieve a VPC", err); } else { vpc = data.Vpcs[0].VpcId; var paramsSecurityGroup = { Description: "DESCRIPTION", GroupName: "SECURITY_GROUP_NAME", VpcId: vpc, }; // Create the instance ec2.createSecurityGroup(paramsSecurityGroup, function (err, data) { if (err) { console.log("Error", err); } else { var SecurityGroupId = data.GroupId; console.log("Success", SecurityGroupId); var paramsIngress = { GroupId: "SECURITY_GROUP_ID", IpPermissions: [ { IpProtocol: "tcp", FromPort: 80, ToPort: 80, IpRanges: [{ CidrIp: "0.0.0.0/0" }], }, { IpProtocol: "tcp", FromPort: 22, ToPort: 22, IpRanges: [{ CidrIp: "0.0.0.0/0" }], }, ], }; ec2.authorizeSecurityGroupIngress(paramsIngress, function (err, data) { if (err) { console.log("Error", err); } else { console.log("Ingress Successfully Set", data); } }); } }); } });
Untuk menjalankan contoh, ketik berikut ini di baris perintah.
node ec2_createsecuritygroup.js
Kode sampel ini dapat ditemukan di sini GitHub
Menghapus Grup Keamanan
Buat Node.js modul dengan nama fileec2_deletesecuritygroup.js. Pastikan untuk mengkonfigurasi SDK seperti yang ditunjukkan sebelumnya. Untuk mengakses Amazon EC2, buat objek AWS.EC2 layanan. Buat parameter JSON untuk menentukan nama grup keamanan yang akan dihapus. Kemudian panggil deleteSecurityGroup metodenya.
// Load the AWS SDK for Node.js var AWS = require("aws-sdk"); // Set the region AWS.config.update({ region: "REGION" }); // Create EC2 service object var ec2 = new AWS.EC2({ apiVersion: "2016-11-15" }); var params = { GroupId: "SECURITY_GROUP_ID", }; // Delete the security group ec2.deleteSecurityGroup(params, function (err, data) { if (err) { console.log("Error", err); } else { console.log("Security Group Deleted"); } });
Untuk menjalankan contoh, ketik berikut ini di baris perintah.
node ec2_deletesecuritygroup.js
Kode sampel ini dapat ditemukan di sini GitHub