SSD Nodes Learn 🎉 VPS dari $5.50/bln
Panduan Matt ConnorOleh Matt Connor

Apa maksud aduan penyalahgunaan VPS dan cara atasi

Ketahui maksud sebenar aduan penyalahgunaan VPS yang diterima daripada penyedia hos anda. Fahami proses laporan IP, punca trafik mencurigakan, dan cara membalas dengan tepat.

Apakah sebenarnya aduan penyalahgunaan VPS

Aduan penyalahgunaan VPS ialah laporan mengenai trafik yang keluar daripada alamat IP anda, dihantar kepada kenalan penyalahgunaan yang diterbitkan untuk blok IP tersebut, kemudian diserahkan kepada anda oleh hos anda dengan tempoh masa untuk membalas. Kenalan yang diterbitkan itu milik syarikat yang memegang ruang alamat tersebut, jadi orang pertama yang membaca laporan mengenai pelayan anda hampir tidak pernah merupakan anda. Hos anda memadankan IP dan cap masa dengan akaun anda lalu memajukan laporan tersebut.

Notis ini bukan bukti bahawa anda melakukan sesuatu dengan sengaja. Alamat IP ialah satu-satunya pengecam yang dimiliki oleh pelapor. Aplikasi yang diceroboh dan menghantar spam pada jam 03:00 menghasilkan laporan yang sama seperti seseorang yang menghantar spam pada jam 03:00. Inilah sebabnya balasan anda adalah bahagian yang penting. Anda diminta untuk menjelaskan apakah sumbernya dan apakah yang telah anda ubah.

Siapa yang menghantar laporan, dan bagaimana ia sampai ke hos anda

Setiap blok IP awam didaftarkan dengan pendaftar internet serantau (RIR): RIPE NCC, ARIN, APNIC, LACNIC atau AFRINIC. Setiap pendaftaran menerbitkan kenalan penyalahgunaan (abuse contact), dan di situlah laporan dihantar. Anda boleh membaca rekod yang sama seperti yang dibaca oleh pelapor:

whois 203.0.113.10 | grep -iE 'netname|descr|abuse'

Rekod RIPE membawa objek abuse-c: role yang mengandungi baris abuse-mailbox:. Rekod ARIN membawa OrgAbuseEmail:. Sebarang alamat yang diterbitkan di sana akan menerima aduan tersebut, itulah sebabnya laporan mengenai pelayan anda sampai ke hos anda dan bukannya ke dalam peti masuk anda.

Pihak yang memfailkannya biasanya adalah mesin. Empat jenis meliputi hampir semua perkara yang akan anda temui:

  • Pengimbas automatik dan honeypot. Sebuah mesin merekodkan percubaan sambungan daripada IP anda dan memfailkan laporan dengan petikan log dilampirkan.
  • Gelung maklum balas (FBL) yang dikendalikan oleh penyedia peti mel. Penerima mengklik butang junk dan salinan mesej tersebut kembali dalam format ARF (abuse reporting format), iaitu format mel berstruktur yang dibina untuk diurai oleh mesin.
  • Ejen hak cipta. Mereka memantau swarm torrent atau merangkak URL awam, kemudian menghantar notis DMCA (digital millennium copyright act) yang menamakan fail, IP anda, dan cap masa dalam UTC.
  • Pengendali senarai sekat (blocklist) dan jurutera rangkaian, yang menghantar mel ringkas dengan baris yang melanggar peraturan daripada log mereka sendiri.

Oleh kerana kebanyakan laporan pertama dijana secara automatik, hujah dalam balasan tidak akan mencapai apa-apa. Fakta mencapai segala-galanya: apa yang sedang berjalan, dan bila ia dihentikan.

Mengapa notis tiba dengan tarikh akhir

Hos anda juga merupakan penyewa. Ruang alamatnya berada di belakang pembawa huluan (upstream carriers) dan di dalam pangkalan data reputasi yang dikendalikan oleh pihak lain. Laporan yang tidak dijawab akan meningkatkan skor negatif terhadap keseluruhan blok alamat dan bukannya alamat tunggal anda, jadi tarikh akhir yang anda terima adalah tekanan yang diturunkan kepada anda. Baca tempoh masa yang dinyatakan dalam notis tersebut dan anggap ia sebagai perkara sebenar.

Apabila sesuatu berlaku terhadap kes yang tidak dijawab, ia biasanya berupa null route, yang bermaksud trafik ke IP tersebut digugurkan di peringkat huluan, atau penggantungan instans. Pencetusnya biasanya adalah sikap berdiam diri, bukan peristiwa asal. Apa yang dilakukan oleh mana-mana hos tertentu, dan bila ia dilakukan, tertulis dalam polisi hos itu sendiri dan dalam notis itu sendiri. Kedua-dua dokumen tersebut adalah satu-satunya dokumen yang wajar dirujuk, jadi jangan bertindak berdasarkan apa yang didakwa oleh forum mengenai kebenaran sesuatu penyedia.

Spam keluar: mengapa VPS saya menghantar e-mel yang tidak saya hantar

Laporan menyatakan IP anda menghantar e-mel ke perangkap spam, atau penerima menandakan e-mel anda sebagai sampah. Empat punca merangkumi kebanyakan kes: aplikasi web dengan borang e-mel tanpa had kadar, kelayakan SMTP yang bocor dan kini digunakan oleh orang lain, pelayan e-mel yang menjadi relay untuk hos yang tidak sepatutnya, dan log masuk yang dicuri pada aplikasi surat berita. Mulakan dengan baris gilir (queue), kerana pengirim yang terjejas biasanya kelihatan di situ:

sudo postqueue -p | tail -n 20
sudo postqueue -p | grep -c '^[0-9A-F]'

Baris gilir yang menyimpan beribu-ribu mesej ke alamat yang tidak anda kenali bermakna pelayan sedang menghantar e-mel. Seterusnya, cari siapa yang melakukan pengesahan:

sudo grep -o 'sasl_username=[^ ]*' /var/log/mail.log | sort | uniq -c | sort -rn | head

Satu akaun dengan jumlah yang jauh lebih tinggi daripada yang lain adalah kelayakan yang bocor. Jika /var/log/mail.log tidak wujud, sistem tidak memasang rsyslog dan baris yang sama berada dalam jurnal sebaliknya: sudo journalctl -t postfix --since '2 days ago'.

Jika tiada apa-apa yang disahkan, pengirim adalah proses tempatan. Semak peraturan relay dan sambungan yang terbuka:

sudo postconf -n | grep -E 'mynetworks|inet_interfaces|relay'
sudo ss -tnp state established '( dport = :25 )'

Postfix Debian atau Ubuntu standard tidak melakukan relay untuk orang asing. Ia menjadi open relay apabila mynetworks diperluaskan secara manual kepada keseluruhan subnet pengehosan, kerana setiap penyewa lain pada subnet tersebut kemudiannya dipercayai untuk menghantar melalui anda. Sebarang sambungan ke port 25 yang dimiliki oleh proses selain pelayan e-mel anda adalah skrip yang menghantar e-mel dengan sendirinya, yang merupakan perkara biasa bagi aplikasi PHP yang telah diceroboh.

Hentikan aliran tersebut sebelum anda menyiasat, dan simpan bukti:

sudo systemctl stop postfix
sudo tar czf /root/mailqueue.tgz -C /var/spool postfix

sudo postsuper -d ALL mengosongkan baris gilir, dan ia juga memusnahkan rekod tentang apa yang telah dihantar, jadi ambil salinannya terlebih dahulu. Kemudian, tukar setiap kelayakan yang dipegang oleh aplikasi, kemas kini aplikasi tersebut, dan cari apa yang ditinggalkan oleh penceroboh. Insiden spam dan pencerobohan biasanya merupakan peristiwa yang sama, jadi lakukan langkah pemulihan untuk VPS yang digodam dan bukannya sekadar mengosongkan baris gilir.

Imbasan port dan serangan brute force: rupa bentuk kontena yang telah diceroboh

Laporan ini mengandungi baris daripada log pengendali lain, dan ia kelihatan seperti ini:

sshd[2841]: Invalid user admin from 203.0.113.10 port 51992

Puncanya hampir selalu disebabkan oleh servis yang anda sangka telah dilindungi oleh firewall. Docker adalah punca yang kerap berlaku. Menerbitkan port dengan -p 6379:6379 akan menulis peraturan ke dalam chain DOCKER-USER dan nat, dan peraturan tersebut dinilai sebelum peraturan ufw, jadi ufw deny 6379 tidak menyekatnya dan pangkalan data menjawab kepada seluruh internet.

sudo ss -ltnp
sudo iptables -S DOCKER-USER
docker ps

Apa-apa sahaja dalam ss -ltnp yang diikat (bound) kepada 0.0.0.0 atau [::] sedang mendengar pada alamat awam. Terbitkan kepada alamat loopback sebaliknya, -p 127.0.0.1:6379:6379, apabila hanya hos yang perlu mencapainya. Di mana pangkalan data sepatutnya ditempatkan adalah keputusan yang berasingan, dan menjalankan pangkalan data dalam Docker atau pada hos membincangkan pertimbangan tersebut.

Untuk melihat sama ada pelayan anda sendiri sedang melakukan imbasan sekarang:

sudo ss -tnp state syn-sent

Banyak sambungan separuh terbuka (half-open) ke banyak destinasi berbeza bermakna imbasan keluar sedang berlangsung. Log kernel yang dipenuhi dengan nf_conntrack: table full, dropping packet menunjukkan perkara yang sama dari sudut lain: sesuatu sedang membuka lebih banyak sambungan daripada yang sepatutnya dilakukan oleh pelayan ini.

Bina semula kontena yang telah diceroboh daripada membersihkannya. Anda tidak dapat membuktikan apa lagi yang telah berubah di dalamnya, jadi bina semula daripada imej yang anda percayai, pulihkan hanya data yang anda percayai, dan tukar kunci (keys) yang dipegang oleh kontena tersebut.

Notis hak cipta: fail manakah yang sebenarnya mereka lihat

Notis DMCA menyatakan URL atau info hash torrent, alamat IP anda, dan cap masa dalam UTC. Dua punca merangkumi hampir kesemuanya: direktori yang disenaraikan secara awam oleh pelayan web yang mengandungi fail media, dan klien torrent yang masih melakukan seeding selepas muat turun selesai.

Padankan cap masa tersebut dengan log capaian. Format log gabungan nginx meletakkan status pada medan 9 dan laluan permintaan pada medan 7:

sudo grep '14/Aug/2026:03' /var/log/nginx/access.log | awk '{print $9, $7}' | sort | uniq -c | sort -rn | head

Sebelum anda membuat kesimpulan bahawa tiada apa-apa yang dihidangkan, semak jam pelayan. Notis tersebut menggunakan UTC manakala log anda menggunakan zon waktu pelayan, jadi perbezaan beberapa jam akan menyebabkan anda mencari pada tetingkap masa yang salah dan melaporkan negatif palsu:

timedatectl
sudo timedatectl set-timezone UTC

Kemudian, selesaikan puncanya. Alih keluar atau sekat fail tersebut, matikan penyenaraian direktori dengan autoindex off; dalam blok lokasi nginx, dan ikat klien torrent kepada antara muka yang bukan antara muka awam. Balas dengan menyatakan fail tersebut, perubahan yang dibuat, dan masa anda melakukannya. Jika anda percaya tuntutan itu sendiri salah, itu adalah persoalan undang-undang antara anda dengan pengirim, dan notis tersebut menyatakan cara untuk mempertikaikannya. Hos anda bukanlah pihak yang memutuskan perkara tersebut, jadi tiket yang membahaskan merit tuntutan tidak akan membawa ke mana-mana.

Penyenaraian blocklist: mengapa e-mel keluar saya berhenti berfungsi

Masalah ini sering berlaku tanpa sebarang e-mel masuk kepada anda. E-mel keluar tidak lagi diterima, dan e-mel lantunan (bounce) membawa sebabnya:

554 5.7.1 Service unavailable; Client host [203.0.113.10] blocked using zen.spamhaus.org

Semak penyenaraian dengan menterbalikkan empat oktet IP tersebut dan membuat pertanyaan kepada zon senarai berkenaan:

dig +short 10.113.0.203.zen.spamhaus.org

Jawapan kosong bermakna anda tidak disenaraikan di sana. Jawapan dalam julat 127.0.0.x bermakna anda disenaraikan, dan oktet terakhir menyatakan subsenarai mana yang sepadan. Jawapan dalam julat 127.255.255.x bermakna pertanyaan tersebut ditolak dan bukannya dijawab, biasanya kerana ia dihantar melalui resolver awam yang besar, yang tidak dilayan oleh perkhidmatan percuma tersebut. Jalankan semula pertanyaan daripada resolver pelayan itu sendiri untuk mendapatkan hasil yang sebenar.

Proses penyahsenaraian (delisting) dilakukan di tapak pengendali senarai, bukan melalui hos anda, dan ia hanya kekal jika punca masalah diperbaiki terlebih dahulu, kerana perangkap yang menyenaraikan anda akan menyenaraikan anda semula pada mesej seterusnya. Dua perkara lain menentukan sama ada e-mel akan mengalir selepas itu. Rekod PTR anda, iaitu nama DNS terbalik bagi IP tersebut, dikawal oleh hos anda, jadi minta mereka menetapkan satu rekod yang diselesaikan kembali kepada alamat yang sama dan gunakan nama tersebut sebagai HELO anda. Selain itu, alamat yang dikitar semula daripada penyewa sebelumnya boleh membawa sejarah yang bukan anda cipta, perkara yang wajar ditanya sebelum anda menghabiskan masa seminggu menulis semula DNS. Mendapatkan rekod SPF (sender policy framework) dan DKIM (domainkeys identified mail) yang betul, serta polisi DMARC yang menggabungkan kedua-duanya, diterangkan dari awal hingga akhir dalam panduan menjalankan pelayan e-mel sendiri dengan Mailcow.

Infrastruktur geganti, di mana e-mel penyalahgunaan merupakan sebahagian daripada tugas

Jika anda menjalankan nod keluar Tor, VPN awam, atau proksi untuk orang lain, aduan mengenai trafik yang tidak anda jana adalah kos operasi yang biasa. Tugasnya adalah untuk memastikan ia kelihatan jelas sebagai geganti dan bukannya kotak yang telah diceroboh. Tetapkan DNS berbalik kepada nama yang deskriptif, sediakan halaman notis ringkas pada port 80 yang menjelaskan apakah alamat tersebut, jawab e-mel penyalahgunaan dengan cepat menggunakan penjelasan yang sama, dan gunakan apa jua polisi yang ditawarkan oleh perisian untuk menggugurkan port yang paling banyak menjana laporan. Jalankan ia pada alamat IP sendiri, dan sebaik-baiknya pada instans sendiri, supaya laluan nol (null route) pada alamat tersebut tidak menyebabkan aplikasi web anda turut tergendala. Tanya hos anda sebelum bermula, kerana perkara yang dibenarkan berbeza mengikut syarikat dan kadangkala mengikut blok IP, dan itu adalah soalan untuk mereka dan bukannya untuk utas forum. Menjalankan nod keluar Tor pada VPS membincangkan polisi keluar dan halaman notis secara terperinci.

Cara menjawab supaya tiket ditutup

  • Terbitkan alamat hubungan yang dibaca oleh manusia. RFC 2142 menjadikan abuse@ dan postmaster@ pada domain anda sebagai alamat yang dicuba dahulu oleh pelapor. Hoskan peti mel tersebut di tempat lain selain pelayan yang dilindunginya, kerana instans yang digantung tidak dapat menghantar notis yang memberitahu anda bahawa ia telah digantung.
  • Simpan log cukup lama untuk menjawab sebarang pertanyaan. Laporan tentang trafik dua belas hari yang lalu tidak dapat dijawab jika log telah diputar selepas tujuh hari. Semak journalctl --disk-usage, tetapkan MaxRetentionSec=90d dalam /etc/systemd/journald.conf, kemudian jalankan sudo systemctl restart systemd-journald. Log web dan mel berputar mengikut jadualnya sendiri di bawah /etc/logrotate.d/.
  • Pastikan pelayan ditetapkan kepada UTC, supaya cap masa dalam laporan sepadan dengan cap masa dalam log anda tanpa perlu melakukan pengiraan.
  • Asingkan perkara yang menarik aduan daripada perkara yang anda tidak boleh kehilangan. Mel pada satu alamat, aplikasi web pada alamat lain, dan servis geganti pada instansnya sendiri. Tindakan yang diambil terhadap satu IP adalah tindakan yang diambil terhadap segala-galanya di belakang IP tersebut.
  • Jawab dalam tempoh masa yang ditetapkan walaupun siasatan belum selesai. Jawapan sementara yang mengandungi jangka masa adalah jawapan lengkap untuk pusingan pertama.

Jawapan pertama yang menutup kebanyakan tiket adalah ringkas dan spesifik:

Received, thank you. Confirmed at 09:14 UTC.
Source: a contact form in our web app that allowed unauthenticated sending.
Action: form disabled, Postfix stopped, all SMTP credentials rotated 09:31 UTC.
Evidence: mail queue and logs preserved for 90 days if you need them.
Next: patched app redeployed by 18:00 UTC today. I will confirm here.

Nyatakan apa yang anda tahu, dan nyatakan apa yang belum anda selesaikan. Ketiadaan jawapan dianggap sebagai pelayan yang tidak diselenggara, dan laluan eskalasi wujud untuk pelayan yang tidak diselenggara. Sama ada kerja ini tanggungjawab anda atau tidak bergantung pada produk yang anda beli, yang merupakan perbezaan praktikal antara pengehosan VPS terurus dan tidak terurus. Dalam pelan tidak terurus, penyewa ialah pasukan keselamatan.

Keadaan apabila semuanya berjalan lancar

Aduan penyalahgunaan pada dasarnya merupakan masalah penghalaan (routing) sebelum ia menjadi perkara lain. Laporan mengenai sesuatu alamat akan dihantar kepada pihak yang bertanggungjawab ke atas alamat tersebut, kemudian disalurkan kepada individu yang boleh menyelesaikannya. Perkara yang berada di bawah kawalan anda ialah alamat hubungan anda, tempoh pengekalan log, cara perkhidmatan anda dibahagikan merentasi alamat IP, dan kepantasan anda membalas. Jika perkara ini diuruskan dengan betul, kebanyakan notis akan selesai selepas satu pertukaran maklumat. Tabiat yang sama juga menjawab persoalan yang lebih besar mengenai sama ada pengehosan VPS adalah selamat, kerana pelayan yang tidak dipantau adalah pelayan yang akhirnya akan muncul dalam log pihak lain.

FAQ

Adakah aduan penyalahgunaan bermakna VPS saya telah digodam?

Tidak semestinya, tetapi itu adalah perkara pertama yang perlu disingkirkan. Laporan tersebut hanya membuktikan bahawa trafik keluar dari IP anda. Spam keluar dan pengimbasan port lebih kerap berpunca daripada aplikasi atau kontena yang terjejas berbanding daripada pemilik akaun, jadi periksa baris gilir mel dengan sudo postqueue -p dan soket yang mendengar dengan sudo ss -ltnp sebelum melakukan perkara lain. Notis hak cipta dan senarai hitam mempunyai sifat yang berbeza: notis tersebut biasanya merujuk kepada sesuatu yang anda jalankan dengan sengaja.

Berapa lama masa yang saya ada untuk membalas notis penyalahgunaan?

Tempoh masa dinyatakan dalam notis yang anda terima, dan ia berbeza mengikut hos dan kategori. Laporan hak cipta dan perangkap spam cenderung mempunyai tempoh masa yang paling singkat. Anggap masa yang dinyatakan sebagai benar dan hantar balasan ringkas sebelum tempoh tersebut tamat, walaupun anda masih mengesan puncanya. Perkara yang penting bagi orang yang mengendalikan tiket tersebut ialah terdapat manusia yang menanganinya dan trafik telah berhenti.

IP saya berada dalam senarai hitam. Bolehkah hos saya mengeluarkannya?

Tidak. Penyingkiran daripada senarai dilakukan oleh pengendali senarai tersebut, di tapak web mereka sendiri, dan hos anda tidak mempunyai kawalan ke atas pangkalan data mereka. Hos anda memang mengawal rekod PTR, iaitu nama DNS terbalik untuk IP anda, yang merupakan permintaan berasingan yang wajar dibuat pada masa yang sama. Selesaikan masalah penghantaran sebelum anda meminta penyingkiran, kerana perangkap spam yang menyenaraikan anda akan menyenaraikan anda semula pada mesej seterusnya.

Adakah saya perlu memberitahu hos saya apa yang sebenarnya berlaku?

Anda perlu memberitahu mereka secukupnya untuk menutup tiket tersebut: apakah sumbernya, dan bila ia berhenti. Anda tidak perlu memberikan laporan forensik atau data pengguna anda. Balasan yang samar adalah lebih buruk daripada balasan yang ringkas, kerana pengendali yang tidak dapat melihat apa yang berubah tidak mempunyai sebab untuk menganggap kes tersebut telah selesai.

Bolehkah saya mengabaikan laporan automatik daripada pengimbas?

Tidak. Laporan automatik dikira, dan laporan berulang mengenai satu IP akan meningkatkan skor terhadap keseluruhan blok alamat hos anda, yang mengubah kes kecil menjadi peningkatan tahap. Balasan anda boleh terdiri daripada satu perenggan. Pelapor automatik biasanya tidak pernah membacanya, tetapi orang yang mengendalikan tiket di hos anda akan membacanya, dan pembaca itulah yang menentukan apa yang berlaku kepada instans anda.