Rumah > Artikel > Operasi dan penyelenggaraan > Elakkan Kerentanan dan Serangan Keselamatan SSH Biasa: Lindungi Pelayan Linux Anda
Elakkan Kerentanan dan Serangan Keselamatan SSH Biasa: Lindungi Pelayan Linux Anda
Petikan:
Dalam Pelayan Linux hari ini menjadi sebahagian daripada banyak organisasi dan individu. Walau bagaimanapun, seperti semua teknologi berkaitan Internet, pelayan Linux juga menghadapi ancaman keselamatan. Antaranya, SSH (Secure Shell) ialah protokol biasa untuk pengurusan jauh dan pemindahan fail. Untuk memastikan keselamatan pelayan Linux anda, artikel ini akan memperkenalkan beberapa kaedah untuk mengelakkan kelemahan dan serangan keselamatan SSH biasa, dan memberikan contoh kod yang berkaitan.
1 Tukar port SSH lalai
Secara lalai, pelayan SSH mendengar port 22. Ini boleh ditemui dengan mudah oleh penggodam yang boleh cuba memaksa kata laluan secara kasar. Untuk keselamatan tambahan, anda boleh menukar port SSH kepada port bukan standard, seperti 2222. Ini mengurangkan risiko pencerobohan berniat jahat. Untuk menukar port SSH, sila edit fail konfigurasi pelayan SSH /etc/ssh/sshd_config
, cari dan ubah suai baris berikut: /etc/ssh/sshd_config
,找到并修改以下行:
#Port 22 Port 2222
然后重启SSH服务。
二、禁用SSH密码登录,启用SSH密钥认证
SSH密码登录容易受到暴力破解的攻击。为了提高安全性,我们建议禁用SSH密码登录,只允许SSH密钥认证。SSH密钥认证使用公钥和私钥进行身份验证,比传统的密码方式更加安全可靠。
生成SSH密钥对
在本地计算机上生成SSH密钥对。打开终端,输入以下命令:
ssh-keygen -t rsa
按照提示操作,生成的密钥会保存在~/.ssh
目录下。
上传公钥到服务器
将生成的公钥上传到服务器上,可以使用以下命令:
ssh-copy-id -i ~/.ssh/id_rsa.pub user@your_server_ip
其中user
是您的用户名,your_server_ip
是服务器的IP地址。
修改SSH配置文件
编辑SSH服务器配置文件/etc/ssh/sshd_config
,找到并修改以下行:
PasswordAuthentication no PubkeyAuthentication yes
然后重启SSH服务。
三、限制SSH用户登录
为了增加服务器的安全性,您可以限制只允许特定的用户登录SSH。这样可以防止未授权的访问。
创建专用SSH组
在Linux服务器上使用以下命令创建一个专用的SSH用户组:
sudo groupadd sshusers
添加允许SSH访问的用户
使用以下命令将用户添加到SSH用户组:
sudo usermod -aG sshusers username
其中username
是您要添加的用户名。
修改SSH配置文件
编辑SSH服务器配置文件/etc/ssh/sshd_config
,找到并修改以下行:
AllowGroups sshusers
然后重启SSH服务。
四、限制SSH登录尝试次数
暴力破解是黑客常用的攻击方式之一。为了防止暴力破解SSH密码,我们可以限制SSH登录尝试次数,并设置登录失败禁止一段时间。
安装失败登录尝试计数器
使用以下命令安装fail2ban
:
sudo apt-get install fail2ban
配置fail2ban
编辑fail2ban
配置文件/etc/fail2ban/jail.local
,添加以下内容:
[sshd] enabled = true port = ssh filter = sshd logpath = /var/log/auth.log maxretry = 5 bantime = 3600
然后重启fail2ban
rrreee
log masuk kata laluan SSH terdedah kepada serangan brute force. Untuk meningkatkan keselamatan, kami mengesyorkan agar anda melumpuhkan log masuk kata laluan SSH dan membenarkan pengesahan kunci SSH sahaja. Pengesahan kunci SSH menggunakan kunci awam dan peribadi untuk pengesahan, yang lebih selamat dan boleh dipercayai daripada kaedah kata laluan tradisional.
Jana pasangan kunci SSH pada komputer setempat anda. Buka terminal dan masukkan arahan berikut:
rrreee#🎜🎜#Ikuti gesaan dan kunci yang dijana akan disimpan dalam direktori~/.ssh
. #🎜🎜##🎜🎜#your_server_ip
ialah alamat IP pelayan. #🎜🎜##🎜🎜#/etc/ssh/sshd_config
, cari dan ubah suai baris berikut: #🎜 🎜#rrreee#🎜🎜#Kemudian mulakan semula perkhidmatan SSH. #🎜🎜##🎜🎜##🎜🎜##🎜🎜# 3. Hadkan log masuk pengguna SSH #🎜🎜# Untuk meningkatkan keselamatan pelayan, anda boleh mengehadkan pengguna tertentu sahaja untuk log masuk SSH. Ini menghalang akses yang tidak dibenarkan. #🎜🎜#/etc/ssh/sshd_config
, cari dan ubah suai baris berikut: #🎜 🎜#rrreee#🎜🎜#Kemudian mulakan semula perkhidmatan SSH. #🎜🎜##🎜🎜##🎜🎜##🎜🎜# 4. Hadkan bilangan percubaan log masuk SSH #🎜🎜# Brute force cracking adalah salah satu kaedah serangan yang biasa digunakan oleh penggodam. Untuk mengelakkan pemecahan kata laluan SSH secara kasar, kami boleh mengehadkan bilangan percubaan log masuk SSH dan menetapkan tempoh masa untuk percubaan log masuk yang gagal. #🎜🎜#fail2ban
menggunakan arahan berikut: #🎜🎜#rreee#🎜🎜#fail2ban
/etc/fail2ban/jail.local
dan tambah kandungan berikut: # 🎜🎜# rrreee#🎜🎜#Kemudian mulakan semula perkhidmatan fail2ban
. #🎜🎜##🎜🎜##🎜🎜##🎜🎜#Ringkasan: #🎜🎜#Dengan menukar port lalai SSH, melumpuhkan log masuk kata laluan SSH, membolehkan pengesahan kunci SSH, mengehadkan log masuk pengguna SSH dan mengehadkan bilangan log masuk SSH percubaan, Anda boleh meningkatkan keselamatan pelayan Linux anda dan mengelakkan lubang dan serangan keselamatan SSH biasa. Melindungi pelayan anda daripada akses tanpa kebenaran adalah salah satu tanggungjawab anda sebagai pentadbir sistem. #🎜🎜##🎜🎜#Contoh kod rujukan adalah untuk rujukan sahaja, dan pelaksanaan khusus mungkin berbeza bergantung pada persekitaran pelayan dan keperluan. Sila berhati-hati apabila melaksanakan ini dan pastikan anda membuat sandaran data anda untuk mengelakkan situasi yang tidak dijangka. #🎜🎜#Atas ialah kandungan terperinci Elakkan Kerentanan dan Serangan Keselamatan SSH Biasa: Lindungi Pelayan Linux Anda. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!