SSH简介
SSH(Secure Shell)是一种网络协议,用于在不安全的网络环境中保护数据的安全传输,它可以在不安全的网络中为远程登录提供加密和身份验证功能,SSH最初是由芬兰计算机科学家提尔曼·阿斯帕尔(Thomson Amnesic System)开发的,后来发展成为一种广泛使用的协议,在Linux系统中,SSH通常通过OpenSSH软件包来实现。
安装OpenSSH
在Linux系统中,可以使用以下命令安装OpenSSH:
对于基于Debian的系统(如Ubuntu):
sudo apt-get update sudo apt-get install openssh-server
对于基于RPM的系统(如CentOS):
sudo yum install openssh-server
安装完成后,SSH服务将自动启动并监听默认端口22。
配置防火墙
为了允许外部用户访问SSH服务,需要在防火墙中开放22端口,以下是两种常见的防火墙配置方法:
1、使用iptables配置防火墙规则:
sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT sudo service iptables save
2、使用firewalld配置防火墙规则:
sudo firewall-cmd --permanent --add-port=22/tcp sudo firewall-cmd --reload
配置SSH服务
为了让SSH服务更安全,可以对SSH服务进行一些配置,以下是一些常用的配置选项:
1、修改SSH服务端口:
编辑/etc/ssh/sshd_config
文件,找到Port
这一行,将其后面的数字改为其他未被占用的端口号,然后重启SSH服务:
sudo sed -i 's/^Port .*$/Port 新端口号/' /etc/ssh/sshd_config sudo service ssh restart
2、禁用root登录:
编辑/etc/ssh/sshd_config
文件,找到PermitRootLogin
这一行,将其值改为no
,然后重启SSH服务:
sudo sed -i 's/^PermitRootLogin.*$/PermitRootLogin no/' /etc/ssh/sshd_config sudo service ssh restart
3、设置密码策略:
编辑/etc/pam.d/sshd
文件,添加以下内容以设置密码策略(要求用户在首次登录后90天内更改密码):
auth required pam_pwquality.so try_first_pass local_users_only authtok_type= retry=3 authfail_delay=180 minlen=8 ucredit=-1 lcredit=-1 dcredit=-1 ocredit=-1
保存文件后,重启SSH服务使配置生效:
sudo service ssh restart
测试SSH连接
现在可以使用SSH客户端尝试连接到远程服务器,以下是一个简单的示例:
1、在本地计算机上打开终端。
2、输入以下命令,将username
替换为远程服务器上的用户名,将remote_host
替换为远程服务器的IP地址或域名:
ssh username@remote_host
3、如果一切正常,你将看到远程服务器的命令提示符,此时,你可以在远程服务器上执行命令了。
原创文章,作者:K-seo,如若转载,请注明出处:https://www.kdun.cn/ask/188866.html