配置ssh常常遇到一些问题,接下来是避免踩坑,快速配置ssh

相信大家在设置ssh时,会碰到"Permission denied, please try again."

⚠️敲黑板:

  • 有可能是密码输入错误
  • 有可能是防火墙未关闭
  • 有可能是连接机器的root用户没有配置密码
  • 有可能是ssh配置错误

1 安装ssh服务

1.以VM为例,将网络适配器修改为桥接模式,确保连通外网
VM桥接模式设置
2.升级apt-get

$ sudo apt-get update 						# 更新源
$ sudo apt-get upgrade						# 更新已安装包

3.安装ssh服务器、ssh客户端

$ sudo apt install openssh-server			# 安装ssh服务器
$ sudo apt install openssh-client			# 安装ssh客户机

2 下载vim

默认情况下,新装的Ubuntu上也有安装vim,但是这个vim是vim-common版本,操作起来特别不方便,所以要先删除这个版本,然后安装vim

$ sudo apt-get remove vim-common			# 卸载vim-common版本
$ sudo apt-get install vim					# 下载最新版本的vim

3 配置sudo免密操作

1.修改sudoers文件权限

$ chmod 770 /etc/sudoers

2.使用vim,修改sudoers配置文件

# step 1 
$ sudo vi /etc/sudoers
# step 2
:<密码> 										# 输入安装Ubuntu系统时设置的密码
# step 3
···
#%sudo ALL=(ALL:ALL) ALL 					# 找到这一行,在开头添加"#"
%sudo ALL=NOPASSWD: ALL						# 添加新的一行 %sudo ALL=NOPASSWD:ALL
···

# step 4
:wq! 										# 保存配置文件
# step 5						
$ reboot									# 重启生效

3.将sudoers文件权限改回最初状态

$ chmod 440 /etc/sudoers

4 关闭防火墙

$ sudo ufw disable							# 重启生效

5 配置命令行自动补全

默认情况下,新装的Ubuntu上没有Tab键自动补全功能,以下是3行指令:

$ apt-get install bash-completion			# 下载最新版本的bash-completion
$ sudo -s									# 切换到root
# source /etc/bash_completion				# 重新执行刚修改的初始化文件

6 配置ssh

1.配置ssh_config

$ sudo vi /etc/ssh/ssh_config				# 去掉PasswordAuthentication yes前面的"#"号

在这里插入图片描述
2.配置sshd_config

$ sudo vi /etc/ssh/sshd_config	
			
# 在PermitRootLogin prohibit-password这行行首加上"#"
# 在此行下面添加新一行
PermitRootLogin yes

在这里插入图片描述

7 配置root用户密码

$ sudo passwd								# 输入密码,并确认密码

8 查看本机ip

默认情况下,新装的Ubuntu上没有没有ifconfig指令,所以我们要先安装net_tools

$ sudo apt install net_tools				# 安装最新版本的net_tools				
$ ifconfig -a								# inet <ip地址> 就是远程ssh的ip

在这里插入图片描述

9 验证:使用ssh远程连接

$ ssh <user>@<ssh_ip>						# 本例以root用户,ssh远程连接ip为10.40.20.241

在这里插入图片描述

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐