Pelayan minecraft percuma di AWS dengan pengetahuan sifar tentang Linux

Hello, Habr! Lebih tepat lagi, penyangak yang sedang mencari cara untuk menyediakan pelayan minecraft untuk bermain dengan rakan-rakan.

Artikel ini ditujukan untuk bukan pengaturcara, bukan sysadmin, secara umum, bukan untuk khalayak utama Habr. Artikel itu mengandungi arahan langkah demi langkah untuk mencipta pelayan minecraft dengan IP khusus, disesuaikan untuk orang yang jauh dari IT. Jika ini bukan mengenai anda, lebih baik melangkau artikel itu.

Apakah pelayan?

Jadi apa itu pelayan? Jika kita bergantung kepada konsep β€œserver” sebagai komponen perisian, maka pelayan adalah program yang boleh menerima, memproses dan menghantar data yang diterima daripada pengguna (klien) yang disambungkan ke pelayan ini. Menggunakan tapak sebagai contoh, tapak tersebut terletak pada beberapa pelayan web, yang anda akses melalui penyemak imbas. Dalam kes kami, pelayan minecraft menjana dunia yang disambungkan oleh pemain (pelanggan), yang boleh berjalan, memecahkan blok, dsb. Pelayan minecraft bertanggungjawab untuk menyambungkan pemain dan sebarang tindakan mereka.

Jelas sekali, pelayan mesti berjalan pada komputer (mesin). Anda boleh menyediakan pelayan pada komputer rumah anda, tetapi dalam kes ini:

  • Anda membahayakan keselamatan komputer anda sendiri dengan membuka port padanya
  • Pelayan akan meletakkan beban pada komputer anda, yang mungkin mengganggu kerja anda dengannya
  • Anda tidak boleh memastikan komputer rumah anda berjalan 24/7: kadangkala anda mematikannya, kadangkala komputer anda terputus sambungan internet, dsb.
  • Untuk mengakses pelayan anda dari dunia luar, anda perlu mengakses komputer anda melalui alamat IP, yang untuk pembekal Internet "rumah" ialah dinamik, iaitu, ia boleh berubah setiap 2-3 hari atas sebab di luar kawalan anda.

Dan bagaimana kita menyelesaikan masalah ini?

Penyelesaian kepada semua masalah ini adalah dengan menggunakan mesin maya dengan statik, iaitu alamat IP yang tidak boleh ditukar.

Terminologi kompleks? Mari kita fikirkan.
Mari beralih kepada Wikipedia.

Π’ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Π°Ρ машина (VM, ΠΎΡ‚ Π°Π½Π³Π». virtual machine) β€” программная ΠΈ/ΠΈΠ»ΠΈ аппаратная систСма, ΡΠΌΡƒΠ»ΠΈΡ€ΡƒΡŽΡ‰Π°Ρ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎΠ΅ обСспСчСниС Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹...

Untuk meletakkannya dalam istilah yang sangat kasar, ia adalah komputer dalam komputer. Anda juga boleh memasang sistem pengendalian padanya dan bekerja dengannya seperti komputer biasa.

Di mana kita boleh mendapatkannya?

Jawapannya mudah - AWS. Ini adalah platform yang menyediakan banyak perkhidmatan awan berbeza yang berguna untuk semua orang yang bekerja dengan web dan bukan sahaja. Untuk mencipta pelayan minecraft, salah satu produk AWS adalah sempurna - Amazon EC2 β€” mesin maya awan yang tersedia 24/7. AWS menawarkan mesin maya minimum (10GB SSD, 1GB RAM) percuma selama setahun, sebagai tambahan, memungkinkan untuk mengikat alamat IP khusus (statik) percuma untuk akses kekal kepada VM (mesin maya) anda di alamat yang sama.

Kami mencipta dan mengkonfigurasi VM

Pergi ke laman web AWS dan mendaftar. Kemudian pergi ke konsol pengurusan.

Pelayan minecraft percuma di AWS dengan pengetahuan sifar tentang Linux

Dalam konsol, antara perkhidmatan, cari EC2 dan pergi kepadanya.

Adalah penting untuk memilih pusat data, secara ringkasnya, tempat di mana pelayan Amazon berada. Anda harus memilih bergantung pada lokasi anda, kerana kelajuan komunikasi di Internet berbeza-beza, dan anda harus memilih pusat data yang mana komunikasi dari bandar anda akan secepat mungkin.

Pelayan minecraft percuma di AWS dengan pengetahuan sifar tentang Linux

Untuk memilih pusat data, saya syorkan menggunakan perkhidmatan tersebut WonderNetwork, yang mengukur kelajuan penghantaran paket dengan bandar lain.
Dalam kes saya (Moscow), pusat data Ireland sesuai untuk saya.

Sudah tiba masanya untuk mencipta mesin maya. Untuk melakukan ini, pergi ke tab Contoh pelancaran

Pelayan minecraft percuma di AWS dengan pengetahuan sifar tentang Linux

Mari mulakan mengkonfigurasi VM.

1) Pilih imej sistem pengendalian. Linux sangat mudah untuk menaikkan pelayan; kami akan menggunakan kit pengedaran CentOS7

Perlu diingatkan bahawa tidak akan ada persekitaran grafik pada mesin maya anda; akses kepada mesin akan melalui konsol. Ia melibatkan mengawal VM menggunakan arahan dan bukannya tetikus komputer. Jangan takut akan perkara ini: ini tidak sepatutnya menghalang anda sekarang atau melepaskan idea untuk menaikkan pelayan minecraft anda sendiri kerana ia "terlalu sukar." Bekerja dengan mesin melalui konsol tidak sukar - anda akan melihat sendiri tidak lama lagi.

Pelayan minecraft percuma di AWS dengan pengetahuan sifar tentang Linux

2) Sekarang mari kita tentukan konfigurasi teknikal VM. Untuk kegunaan percuma, Amazon menawarkan konfigurasi t2.micro, tidak cukup untuk pelayan minecraft besar yang lengkap, tetapi cukup untuk bermain dengan rakan-rakan.

Pelayan minecraft percuma di AWS dengan pengetahuan sifar tentang Linux

3) Biarkan selebihnya tetapan sebagai lalai, tetapi berhenti di tab Konfigurasikan kumpulan Keselamatan.

Pelayan minecraft percuma di AWS dengan pengetahuan sifar tentang Linux

Di sini kita perlu mengkonfigurasi akses kepada port untuk pelayan minecraft.

Secara ringkas, port ialah nombor bukan negatif yang menunjukkan kepada siapa data masuk dari dunia luar ditujukan. VM boleh mengehoskan banyak perkhidmatan dan pelayan yang berbeza, jadi semua paket data yang masuk menyimpan port (nombor) destinasi (perkhidmatan, pelayan) di dalam VM dalam pengepalanya.

Untuk pelayan minecraft, standard de facto adalah menggunakan port 25565. Mari tambahkan peraturan yang menunjukkan bahawa akses kepada VM anda melalui port ini boleh diterima.

Pelayan minecraft percuma di AWS dengan pengetahuan sifar tentang Linux

Pelayan minecraft percuma di AWS dengan pengetahuan sifar tentang Linux

Kami pergi ke tetingkap untuk melengkapkan penciptaan VM dengan mengklik butang Semak dan Pelancaran

Menyediakan pasangan kunci SSH untuk VM

Jadi, sambungan ke mesin akan dijalankan menggunakan protokol SSH.

Protokol SSH berfungsi seperti berikut: sepasang kunci (awam dan peribadi) dijana, kunci awam disimpan pada VM, dan kunci peribadi disimpan pada komputer orang yang menyambung ke VM (klien). Apabila menyambung, VM menyemak bahawa klien mempunyai kunci peribadi yang sesuai.

akhbar pelancaran. Tetingkap berikut akan muncul di hadapan anda:

Pelayan minecraft percuma di AWS dengan pengetahuan sifar tentang Linux

Masukkan nama pasangan kunci (untuk kemudahan anda) dan klik Muat turun pasangan kunci. Anda harus memuat turun .pem fail yang mengandungi kunci peribadi anda. Klik butang Lancarkan contoh. Anda baru sahaja mencipta mesin maya di mana pelayan akan dipasang.

Mendapatkan IP statik

Sekarang kita perlu mendapatkan dan mengikat IP statik ke VM kita. Untuk menu ini kita dapati tab IP elastik dan kami bergerak bersamanya. Pada tab, klik butang Peruntukkan alamat IP Elastik dan dapatkan IP statik.

Pelayan minecraft percuma di AWS dengan pengetahuan sifar tentang Linux

Sekarang alamat IP yang diterima mesti dikaitkan dengan VM kami. Untuk melakukan ini, pilihnya dari senarai dan dalam menu Tindakan pilih Alamat IP bersekutu

Pelayan minecraft percuma di AWS dengan pengetahuan sifar tentang Linux

Seterusnya, kami akan mengikat VM ke alamat IP kami

Pelayan minecraft percuma di AWS dengan pengetahuan sifar tentang Linux

Selesai!

Kami pergi ke VM

Sekarang setelah VM dikonfigurasikan dan alamat IP diberikan, mari sambung kepadanya dan pasang pelayan minecraft kami.

Untuk menyambung ke VM melalui SSH kami akan menggunakan program ini PuTTY. Pasang PuTTYgen segera dari halaman ini

Selepas memasang PuTTY, bukanya. Sekarang anda perlu mengkonfigurasi sambungan.

Pelayan minecraft percuma di AWS dengan pengetahuan sifar tentang Linux

  1. Di tab Sesi pilih jenis sambungan SSH, pelabuhan 22. Tentukan nama untuk sambungan. Nama hos untuk menyambung melalui SSH ialah rentetan seperti: имя_ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ@ΠΏΡƒΠ±Π»ΠΈΡ‡Π½Ρ‹ΠΉ_dns.

Nama pengguna lalai dalam AWS untuk CentOS ialah CentOS. DNS awam anda boleh dilihat di sini:

Pelayan minecraft percuma di AWS dengan pengetahuan sifar tentang Linux

Saya mendapat talian [email protected]

  1. Di tab SSH -> Pengesahan masukkan kunci SSH peribadi anda. Ia disimpan dalam fail .pem, yang kami muat turun sebelum ini. Tetapi PuTTY tidak boleh berfungsi dengan fail .pem, dia memerlukan format .ppk. Untuk penukaran kami akan menggunakan PuTTYgen. Arahan penukaran daripada tapak web PuTTYgen. Fail yang diterima .ppk Mari simpan dan nyatakan di sini:

Pelayan minecraft percuma di AWS dengan pengetahuan sifar tentang Linux

  1. Kami menyambung ke VM dengan membuka sambungan dengan butang Buka.
    tahniah! Kami baru sahaja menyambung ke konsol VM anda. Yang tinggal hanyalah memasang pelayan kami padanya.

Memasang dan mengkonfigurasi pelayan minecraft

Mari mulakan menyediakan pelayan kami. Pertama, kami perlu memasang beberapa pakej pada VM kami.

sudo yum install -y wget mc iptables iptables-services java screen

Mari kita fikirkan untuk apa setiap pakej itu.

  • wget - utiliti untuk memuat turun fail dalam Linux. Menggunakannya kami akan memuat turun fail pelayan.
  • mc - editor teks konsol. Ia mudah dan mudah digunakan untuk pengguna yang tidak terlatih.
  • iptables β€” utiliti untuk mengurus dan mengkonfigurasi tembok api, dengan bantuannya kami akan membuka port untuk pelayan pada VM kami.
  • Java β€” minecraft berjalan di java, jadi pelayan perlu berfungsi
  • skrin - pengurus tingkap untuk Linux. Ia akan membolehkan kami menduplikasi konsol kami untuk menaikkan pelayan. Hakikatnya ialah pelayan mesti dilancarkan melalui konsol; jika anda memutuskan sambungan dari VM anda, proses pelayan akan dihentikan. Oleh itu, kami akan menjalankannya dalam tetingkap konsol yang berasingan.

Sekarang mari kita konfigurasikan tembok api.

Firewall ialah elemen perisian atau perkakasan-perisian rangkaian komputer yang mengawal dan menapis trafik rangkaian yang melaluinya mengikut peraturan yang ditetapkan. (Wikipedia)

Untuk menerangkan secara ringkas: bayangkan sebuah bandar berkubu. Dia sentiasa diserang dari luar, manakala kehidupan normal berjalan di bandar. Untuk mengakses bandar, terdapat pintu gerbang di dinding kubu, di mana pengawal berdiri dan memeriksa dari senarai sama ada orang ini boleh dibenarkan masuk ke kubu. Peranan dinding dan pintu dalam rangkaian komputer dilakukan oleh tembok api.

sudo mcedit /etc/sysconfig/iptables

Kami baru sahaja mencipta fail konfigurasi firewall. Mari kita isi dengan data konfigurasi standard, termasuk peraturan untuk port 25565, yang merupakan port standard untuk pelayan minecraft.

*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 25565 -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT

Tutup fail dengan menekan F10, menyimpan perubahan.

Pelayan minecraft percuma di AWS dengan pengetahuan sifar tentang Linux

Sekarang mari lancarkan tembok api dan dayakannya dalam permulaan:

sudo systemctl enable iptables
sudo systemctl restart iptables

Kami akan menyimpan fail pelayan dalam folder berasingan, menciptanya, pergi ke sana dan memuat turun fail pelayan. Untuk melakukan ini, anda harus menggunakan wget

mkdir minecraft
cd minecraft
wget <ссылка_Π½Π°_jar>

Perlu mencari pautan terus untuk muat turun .jar fail pelayan. Sebagai contoh, pautan ke fail pelayan versi 1.15.2:

wget https://launcher.mojang.com/v1/objects/bb2b6b1aefcd70dfd1892149ac3a215f6c636b07/server.jar

Lihat kandungan folder menggunakan arahan ls, pastikan fail dimuat turun.

Pelayan minecraft percuma di AWS dengan pengetahuan sifar tentang Linux

Mari lancarkan fail pelayan. Sekarang pelayan tidak akan berfungsi: ia akan mencipta semua fail yang diperlukan untuk operasi, dan akan mengadu bahawa anda tidak bersetuju dengan syarat lesen EULA. Terima syarat dengan membuka fail eula.txt

sudo mcedit eula.txt

Sahkan persetujuan anda dengan menukar entri kepada:

eula=true

Buka fail server.properties: Ini ialah fail konfigurasi pelayan anda. Lebih lanjut mengenai tetapan pelayan

Perubahan berikut mesti dibuat kepadanya:

online-mode=false

Tetapan selebihnya adalah mengikut budi bicara anda.

Memulakan pelayan

Sudah tiba masanya untuk memulakan pelayan. Seperti yang saya telah katakan, pelayan bermula terus dari konsol, tetapi jika kita menutup konsol utama, proses pelayan akan dihentikan. Oleh itu, mari buat konsol lain:

screen

Mari mulakan pelayan dalam konsol ini:

 sudo java -Xms512M -Xmx1024M -jar <Π½Π°Π·Π²Π°Π½ΠΈΠ΅_Ρ„Π°ΠΉΠ»Π°_сСрвСра>.jar --nogui

Pelayan bermula dalam kira-kira 45 saat, jangan ganggu proses. Apabila pelayan dimulakan dan berjalan, anda akan melihat sesuatu seperti:

Pelayan minecraft percuma di AWS dengan pengetahuan sifar tentang Linux

tahniah! Anda baru sahaja menyediakan pelayan minecraft anda dan berjalan. Sekarang adalah penting untuk keluar dari konsol kedua dengan betul supaya ia terus berfungsi dengan pelayan yang sedang berjalan. Untuk melakukan ini, klik Ctrl+Akemudian D. Anda sepatutnya berada di konsol utama dan melihat mesej seperti [detached from 1551.pts-0.ip-172-31-37-146]. Jika anda perlu kembali ke konsol di mana pelayan sedang berjalan, gunakan screen -r

Anda kini boleh memutuskan sambungan daripada VM anda. Pelayan anda boleh diakses melalui alamat IP statik yang kami terima sebelum ini, pada port 25565.

Pelayan minecraft percuma di AWS dengan pengetahuan sifar tentang Linux

Ternyata alamat untuk memasuki pelayan akan menjadi <ваш_статичСский_IP>:25565.

Kesimpulan

Menggunakan arahan ini, anda boleh menyediakan pelayan minecraft percuma dengan IP khusus dengan mudah. Artikel itu ditulis dalam bahasa yang paling mudah dan ditujukan untuk bukan pakar. Dalam hal ini, adalah menarik untuk mendengar komen mereka yang sibuk, kerana apabila memudahkan bahan, kesilapan fakta dalam istilah boleh dibuat.

Sumber: www.habr.com

Tambah komen