Jadual Kandungan
1. Lumpuhkan log masuk pengguna root" >1. Lumpuhkan log masuk pengguna root
2. Tukar port SSH lalai" >2. Tukar port SSH lalai
3 Dilarang log masuk dengan kata laluan kosong" >3 Dilarang log masuk dengan kata laluan kosong
4. Hadkan bilangan percubaan log masuk/akses" >4. Hadkan bilangan percubaan log masuk/akses
5、使用SSH Version 2" >5、使用SSH Version 2
6、关闭TCP端口转发和X11转发" >6、关闭TCP端口转发和X11转发
7、使用SSH密钥连接" >7、使用SSH密钥连接
8、SSH连接的IP限制" >8、SSH连接的IP限制
9、有选择地允许用户和组访问" >9、有选择地允许用户和组访问
10、设置空闲超时时间间隔" >10、设置空闲超时时间间隔
12、添加 Banner 警告语言" >12、添加 Banner 警告语言
12、强制使用强大的MAC算法" >12、强制使用强大的MAC算法
13、将LogLevel设置为监视SSH活动" >13、将LogLevel设置为监视SSH活动
Linux 服务器安全的重要性" >Linux 服务器安全的重要性
Rumah Tutorial sistem LINUX Bermula dengan Keselamatan SSH: 13 Cara untuk Mewujudkan Sambungan Selamat di Linux

Bermula dengan Keselamatan SSH: 13 Cara untuk Mewujudkan Sambungan Selamat di Linux

Feb 11, 2024 am 10:54 AM
linux tutorial linux sistem linux arahan linux skrip shell embeddedlinux Bermula dengan linux pembelajaran linux

SSH ialah protokol yang digunakan untuk log masuk dan mengurus pelayan Linux dari jauh Ia boleh menyulitkan penghantaran data dan menghalang serangan orang tengah dan mencuri dengar. Walau bagaimanapun, SSH sendiri mungkin juga menghadapi beberapa ancaman keselamatan, seperti pemecahan kata laluan brute force, pengimbasan port, rampasan sesi, dsb. Oleh itu, kami perlu mengambil beberapa langkah untuk melindungi sambungan pelayan SSH kami dan meningkatkan keselamatan dan kebolehpercayaan. Artikel ini akan memperkenalkan 13 cara untuk mewujudkan sambungan SSH yang selamat di Linux, termasuk menukar port lalai, melumpuhkan log masuk akar, menggunakan pengesahan kunci, mengehadkan percubaan log masuk, menggunakan tembok api, menggunakan pengesahan dua faktor, dsb.

1. Lumpuhkan log masuk pengguna root

Pertama, lumpuhkan akses SSH untuk pengguna root dan buat pengguna baharu dengan keistimewaan root. Mematikan akses pelayan untuk pengguna akar ialah strategi pertahanan yang menghalang penyerang daripada mendapat akses kepada sistem anda. Sebagai contoh, anda boleh mencipta pengguna bernama exampleroot seperti berikut:

useradd -m exampleroot
passwd exampleroot
usermod -aG sudo exampleroot
Salin selepas log masuk

Berikut adalah penjelasan ringkas arahan di atas:

Perintah

useradd digunakan untuk mencipta pengguna baharu Parameter -m akan mencipta folder untuk pengguna yang dibuat dalam direktori utama.

Arahan

passwd digunakan untuk memberikan kata laluan kepada pengguna baharu. Ingat, kata laluan yang diberikan kepada pengguna mestilah kata laluan yang kompleks dan sukar diteka.

usermod -aG sudo menambahkan pengguna yang baru dibuat pada kumpulan pentadbir.

Selepas mencipta pengguna, beberapa perubahan perlu dibuat pada fail sshd_config. Anda boleh mencari fail ini di /etc/ssh/sshd_config. Buka fail menggunakan mana-mana editor teks dan buat perubahan berikut:

# Authentication: 

#LoginGraceTime 2m 
PermitRootLogin no 
AllowUsers exampleroot
Salin selepas log masuk

Bermula dengan Keselamatan SSH: 13 Cara untuk Mewujudkan Sambungan Selamat di Linux

Parameter PermitRootLogin menghalang pengguna root daripada mendapat akses jauh menggunakan SSH. Memasukkan akar contoh dalam senarai AllowUsers memberikan pengguna kebenaran yang diperlukan.

Akhir sekali, mulakan semula perkhidmatan SSH menggunakan arahan berikut:

sudo systemctl restart ssh
Salin selepas log masuk

Jika gagal dan anda mendapat mesej ralat, cuba arahan di bawah. Ini mungkin berbeza bergantung pada pengedaran Linux yang anda gunakan.

sudo systemctl restart sshd
Salin selepas log masuk

2. Tukar port SSH lalai

Port sambungan SSH lalai ialah 22. Sudah tentu, semua penyerang mengetahui perkara ini dan oleh itu perlu menukar nombor port lalai untuk memastikan keselamatan SSH. Walaupun penyerang boleh mencari nombor port baharu dengan mudah menggunakan imbasan Nmap, matlamat di sini adalah untuk menjadikan tugas penyerang lebih sukar.

Untuk menukar nombor port, buka /etc/ssh/sshd_config dan buat perubahan berikut pada fail:

Include /etc/ssh/sshd_config.d/*.conf

Port 5922
Salin selepas log masuk

Selepas melengkapkan langkah ini, gunakan perintah sudo systemctl restart ssh sekali lagi untuk memulakan semula perkhidmatan SSH. Kini anda boleh mengakses pelayan menggunakan port yang baru anda tentukan.

Jika anda menggunakan tembok api, anda mesti membuat perubahan peraturan yang diperlukan di sana. Jalankan perintah netstat -tlpn dan anda dapat melihat bahawa nombor port untuk SSH telah berubah.

3 Dilarang log masuk dengan kata laluan kosong

Mungkin terdapat pengguna tanpa kata laluan pada sistem anda, yang mungkin anda cipta secara tidak sengaja. Untuk menghalang pengguna tersebut daripada mengakses pelayan, anda boleh menetapkan nilai baris PermitEmptyPasswords dalam fail sshd_config kepada no.

PermitEmptyPasswords no
Salin selepas log masuk

4. Hadkan bilangan percubaan log masuk/akses

Secara lalai anda boleh menggunakan seberapa banyak percubaan kata laluan untuk mengakses pelayan. Walau bagaimanapun, penyerang boleh mengeksploitasi kelemahan ini untuk memaksa pelayan secara kasar.

Anda boleh menamatkan sambungan SSH secara automatik dengan menyatakan bilangan percubaan kata laluan yang dibenarkan dalam fail sshd_config.

Untuk melakukan ini, tukar nilai MaxAuthTries.

MaxAuthTries 3
Salin selepas log masuk

5、使用SSH Version 2

SSH Version 2 的发布是因为第一版存在许多漏洞。默认情况下,您可以通过将 Protocol 参数添加到您的 sshd_config 文件中来启用使用SSH Version 2。

这样,您所有未来的连接都将使用 SSH2。

Include /etc/ssh/sshd_config.d/*.conf

Protocol 2
Salin selepas log masuk

Bermula dengan Keselamatan SSH: 13 Cara untuk Mewujudkan Sambungan Selamat di Linux

6、关闭TCP端口转发和X11转发

攻击者可以通过SSH连接进行端口转发,尝试获取访问您其他系统的权限。为了防止这种情况发生,您可以在sshd_config文件中关闭AllowTcpForwarding和X11Forwarding功能。

X11Forwarding no 
AllowTcpForwarding no
Salin selepas log masuk

7、使用SSH密钥连接

连接到服务器最安全的方法之一是使用SSH密钥。使用SSH密钥,您可以无需密码访问服务器。此外,您可以通过更改sshd_config文件中的与密码相关的参数来完全关闭服务器的密码访问。

创建SSH密钥时,有两个密钥:公钥和私钥。公钥上传到您要连接的服务器,私钥存储在使用该密钥进行连接的计算机上。

在计算机上使用ssh-keygen命令创建SSH密钥。不要留空Passphrase字段,并记住您在此输入的密码。

如果您留空该字段,则只能通过SSH密钥文件进行访问。但是,如果设置了密码,您可以防止拥有密钥文件的攻击者访问它。

例如,您可以使用以下命令创建SSH密钥:

ssh-keygen
Salin selepas log masuk

8、SSH连接的IP限制

大多数情况下,防火墙使用其标准框架阻止访问并旨在保护服务器。但是,这并不总是足够的,您需要增加此安全性潜力。

要做到这一点,请打开/etc/hosts.allow文件。通过在此文件中进行添加,您可以限制SSH权限,允许特定IP块或输入单个IP并使用拒绝命令阻止所有其余IP地址。

下面是一些示例设置。完成这些操作后,像往常一样重新启动SSH服务以保存更改。

IP-Restriction-for-SSH-Connection-1
Salin selepas log masuk

Bermula dengan Keselamatan SSH: 13 Cara untuk Mewujudkan Sambungan Selamat di Linux

9、有选择地允许用户和组访问

您可以配置sshd配置文件以有选择地允许或禁止用户和组从SSH登录到您的服务器。默认情况下,所有用户和组都允许访问。当您管理不应由除那些具有适当权限的人以外的任何人访问的生产服务器时,这是一种安全风险。

以下是您需要添加以允许/拒绝用户和组访问SSH的行:

AllowUsers: username sshuser@ip:port
AllowGroups: groupname
DenyUsers: username1 username2 sshuser@ip:port
DenyGroups: groupname
Salin selepas log masuk

10、设置空闲超时时间间隔

如果一个受信任的用户离开他们的桌面未经注销,那么拥有他们电脑访问权限的对手可以利用这一点,在缺席或不活动的受信任用户的情况下对服务器进行恶意操作。

抵御这种情况的最简单方法是设置一个空闲超时时间间隔。在定义的一段不活动时间后,服务器将终止与用户的SSH连接,以防止在缺席或不活动的情况下未经授权的访问。

以下是您需要添加到ssh配置文件中以开启此设置的行:

ClientAliveInterval 120
Salin selepas log masuk

根据配置文件中发出的命令,经过120秒的不活动时间后,连接将被终止。您可以更改数字以适应自己的喜好。

12、添加 Banner 警告语言

虽然这不是一种主动的安全措施,但添加 Banner 警告语言可以是一种有用的心理策略,用于防止不受欢迎的访客,并在他们试图以恶意意图连接到您的服务器时使对手处于不利位置。

要添加自定义 Banner 警告语言,请首先仔细准备横幅的文本或从互联网上抓取一个通用的文本文件,然后将以下行添加到您的配置文件中:

Banner /path/to/banner/banner.txt
Salin selepas log masuk
Salin selepas log masuk

12、强制使用强大的MAC算法

在SSH的上下文中,MAC代表消息认证码。MAC是一种加密算法,用于验证和确认客户端与服务器之间的数据传输。

设置强大的MAC算法非常重要,以确保数据的完整性和保密性,这是网络安全的两个关键支柱。以下是您需要在配置文件中添加的行:

Banner /path/to/banner/banner.txt
Salin selepas log masuk
Salin selepas log masuk

13、将LogLevel设置为监视SSH活动

您可以监视SSH活动的不同详细程度。默认情况下,此功能可能已关闭。建议您打开此功能,并将其设置为基本日志记录级别 – INFO,该级别仅记录用户的错误、消息、密钥验证、登录和注销活动。

如果您愿意,可以将其更改为更详细的级别,例如VERBOSE或DEBUG。以下是您需要在sshd配置文件中添加的行:

LogLevel INFO
Salin selepas log masuk

现在,您的SSH服务器将生成基本日志数据,您可以通过导航到并读取基于Debian / Ubuntu的机器上的/var/log/auth.log*文件和基于RHEL / CentOS / Fedora的机器上的/var/log/secure文件来阅读此日志数据。

您可以查看整个日志文件并导航到带有sshd的部分,或者使用grep命令过滤内容并仅阅读sshd日志。

Linux 服务器安全的重要性

通过本文的介绍,我们学习了在Linux上建立SSH安全连接的13种方法,它们可以帮助我们防止一些常见的SSH攻击和漏洞,提高我们的服务器安全性和可信度。当然,这些方法并不是全部,还有一些其他的技巧和工具可以用来增强SSH的安全性,比如使用SSH代理、隧道、跳板等。我们建议你根据自己的实际情况和需求,选择合适的方法来保护你的SSH服务器连接。希望你喜欢这篇文章,并享受你的SSH体验。

Atas ialah kandungan terperinci Bermula dengan Keselamatan SSH: 13 Cara untuk Mewujudkan Sambungan Selamat di Linux. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Konfigurasi komputer apa yang diperlukan untuk vscode Konfigurasi komputer apa yang diperlukan untuk vscode Apr 15, 2025 pm 09:48 PM

Keperluan Sistem Kod Vs: Sistem Operasi: Windows 10 dan ke atas, MACOS 10.12 dan ke atas, pemproses pengedaran Linux: minimum 1.6 GHz, disyorkan 2.0 GHz dan ke atas memori: minimum 512 MB, disyorkan 4 GB dan ke atas ruang penyimpanan: minimum 250 mb, disyorkan 1 GB dan di atas keperluan lain:

Apr 16, 2025 pm 07:39 PM

Walaupun Notepad tidak dapat menjalankan kod Java secara langsung, ia dapat dicapai dengan menggunakan alat lain: menggunakan pengkompil baris arahan (Javac) untuk menghasilkan fail bytecode (fileName.class). Gunakan Java Interpreter (Java) untuk mentafsir bytecode, laksanakan kod, dan output hasilnya.

VSCode tidak dapat memasang pelanjutan VSCode tidak dapat memasang pelanjutan Apr 15, 2025 pm 07:18 PM

Sebab -sebab pemasangan sambungan kod VS mungkin: ketidakstabilan rangkaian, kebenaran yang tidak mencukupi, isu keserasian sistem, versi kod VS terlalu lama, perisian antivirus atau gangguan firewall. Dengan menyemak sambungan rangkaian, keizinan, fail log, mengemas kini kod VS, melumpuhkan perisian keselamatan, dan memulakan semula kod VS atau komputer, anda boleh menyelesaikan masalah dan menyelesaikan masalah secara beransur -ansur.

Seni Bina Linux: Melancarkan 5 Komponen Asas Seni Bina Linux: Melancarkan 5 Komponen Asas Apr 20, 2025 am 12:04 AM

Lima komponen asas sistem Linux adalah: 1. Kernel, 2. Perpustakaan Sistem, 3. Utiliti Sistem, 4. Antara Muka Pengguna Grafik, 5. Aplikasi. Kernel menguruskan sumber perkakasan, Perpustakaan Sistem menyediakan fungsi yang telah dikompilasi, utiliti sistem digunakan untuk pengurusan sistem, GUI menyediakan interaksi visual, dan aplikasi menggunakan komponen ini untuk melaksanakan fungsi.

Boleh vscode digunakan untuk mac Boleh vscode digunakan untuk mac Apr 15, 2025 pm 07:36 PM

VS Kod boleh didapati di Mac. Ia mempunyai sambungan yang kuat, integrasi git, terminal dan debugger, dan juga menawarkan banyak pilihan persediaan. Walau bagaimanapun, untuk projek yang sangat besar atau pembangunan yang sangat profesional, kod VS mungkin mempunyai prestasi atau batasan fungsi.

Apa itu vscode untuk apa vscode? Apa itu vscode untuk apa vscode? Apr 15, 2025 pm 06:45 PM

VS Kod adalah nama penuh Visual Studio Code, yang merupakan editor kod dan persekitaran pembangunan yang dibangunkan oleh Microsoft. Ia menyokong pelbagai bahasa pengaturcaraan dan menyediakan penonjolan sintaks, penyiapan automatik kod, coretan kod dan arahan pintar untuk meningkatkan kecekapan pembangunan. Melalui ekosistem lanjutan yang kaya, pengguna boleh menambah sambungan kepada keperluan dan bahasa tertentu, seperti debuggers, alat pemformatan kod, dan integrasi Git. VS Kod juga termasuk debugger intuitif yang membantu dengan cepat mencari dan menyelesaikan pepijat dalam kod anda.

Cara menggunakan vscode Cara menggunakan vscode Apr 15, 2025 pm 11:21 PM

Visual Studio Code (VSCode) adalah editor cross-platform, sumber terbuka dan editor kod percuma yang dibangunkan oleh Microsoft. Ia terkenal dengan ringan, skalabilitas dan sokongan untuk pelbagai bahasa pengaturcaraan. Untuk memasang VSCode, sila lawati laman web rasmi untuk memuat turun dan jalankan pemasang. Apabila menggunakan VSCode, anda boleh membuat projek baru, edit kod, kod debug, menavigasi projek, mengembangkan VSCode, dan menguruskan tetapan. VSCode tersedia untuk Windows, MacOS, dan Linux, menyokong pelbagai bahasa pengaturcaraan dan menyediakan pelbagai sambungan melalui pasaran. Kelebihannya termasuk ringan, berskala, sokongan bahasa yang luas, ciri dan versi yang kaya

Cara memeriksa alamat gudang git Cara memeriksa alamat gudang git Apr 17, 2025 pm 01:54 PM

Untuk melihat alamat repositori Git, lakukan langkah -langkah berikut: 1. Buka baris arahan dan navigasi ke direktori repositori; 2. Jalankan perintah "Git Remote -V"; 3. Lihat nama repositori dalam output dan alamat yang sepadan.

See all articles