今天新安装Ubuntu16.04,在使用putty去ssh连接虚拟机时,被提示connect refuse:
首先进入虚拟机,打开终端,输入service sshd start,提示 宿舍ssh.service not found:
我打算安装去ssh.service,输入sudo apt-get install openssh-server,提示:
原因就是/var/lib/dpkg/lock 这个资源被占用了,因为一些特殊原因安装失败,但是进程依然占用着该资源,我这里使用rm /var/lib/dpkg/lock删除,这里提示
使用su root 命令切换root用户,提示:
Ubuntu安装后,root用户默认是被锁定了的,不允许登录,也不允许执行“su命令到root”。对于桌面用户而言,这样可以提高安全性。但对于服务器可以设置成允许“su命令到root,但不允许root用户直接登录”。
认证失败有两种情况,一个是密码错了,我才装的新系统,密码不可能记错,那只能是另外的一个原因了,这里我使用通过重新设置root密码来解决
$sudo passwd
[sudo] password for xxx: 输入安装时那个用户的密码
Enter new UNIX password: 新的root用户密码
Retype new UNIX password: 重复新的root用户密码
passwd:已成功更新密码
然后重新使用使用rm /var/lib/dpkg/lock删除前面占用进程的资源。
再使用sudo apt-get install openssh-server命令安装服务,中途提示一律yes
使用service sshd start命令开启ssh服务,用netstat -antp | grep sshd 命令查看
最后,你就可以使用putty或xshell登录虚拟机了,然后又出问题了:
直接百度问题,解决办法:
在/etc/ssh/sshd_config 中有个 PermitRootLogin, 改成“PermitRootLogin yes”就可以了
重启ssh: /etc/init.d/ssh restart
OK,终于可以愉快的玩耍了!