本文共 950 字,大约阅读时间需要 3 分钟。
在尝试使用ssh username@localhost
连接Ubuntu系统时,如果遇到ssh: connect to host localhost port 22: Connection refused
的错误提示,通常是因为SSH服务未安装或未正确配置。以下是详细的解决步骤:
首先确保系统上已安装SSH服务器:
sudo apt-get install openssh-server
安装完成后,SSH服务会自动启动。
确认SSH服务是否正在运行:
sudo systemctl status sshd
如果服务未启动,可以启动它:
sudo systemctl start sshd
或使用:
sudo service ssh start
有时防火墙会阻止SSH连接。关闭防火墙(仅限权限较高用户):
sudo ufw disable
检查防火墙状态:
sudo ufw status
如果防火墙开启,尝试禁用它后再次连接。
确保目标用户存在且具有登录权限:
sudo deluser usernamesudo adduser usernamesudo passwd username
或者使用用户管理工具如useradd
和passwd
。
查看/etc/ssh/sshd_config
文件,确认配置正确:
Listen 22
存在且没有注释。Port 22
正确无误。尝试使用ssh username@localhost
或ssh username@127.0.0.1
:
ssh username@localhost
如果仍有问题,检查网络是否阻止了22端口:
sudo iptables -L -n
清除防火墙规则并重启服务:
sudo iptables -Fsudo systemctl restart sshd
如果命令行连接不便,可以使用如PuTTY
或Terminal
应用程序。
通过以上步骤,应该能够解决SSH连接被拒绝的问题。如果问题依旧,可以查看日志文件:
sudo tail -f /var/log/auth.log
转载地址:http://cuzi.baihongyu.com/