1.开启虚拟机以及git bash窗口,准备连接

2.在虚拟机中输入ifconfig -a查看虚拟机ip

从图中找到ip为 :inet 地址:192.168.78.133

3.输入命令: ssh root@192.168.78.133 -p 22连接虚拟机

此时我的电脑有报错:ssh: connect to host 192.168.78.133 port 22: Connection refused

造成这个错误的原因可能是ssh-server未安装或者未启动。ubuntu 11.10 默认安装openssh-client,但是木有安装server

运行 ps -e | grep ssh,查看是否有sshd进程

如果没有,说明server没启动,通过 /etc/init.d/ssh -start 启动server进程,如果提示ssh不存在 那么就是没安装server

通过 sudo apt-get install openssh-server命令安装即可

4.安装后并开启server服务

5.此时再次使用ssh root@192.168.78.133 -p 22连接虚拟机会有

然而我并没有设置密码也不知道密码,使用虚拟机密码没有用

此时我们只能修改ssh的配置文件来修改

/etc/ssh/sshd_config文件中的PermitRootLogin prohibit-password改为PermitRootLogin yes(或者删掉PermitRootLogin prohibit-password也可以,为了安全可以备份,注释掉就可以)

修改时查看文件的权限

此时可知改文件为普通文件,权限为rw-r--r--

为修改文件我们可将文件改为rwxrwxrwx

执行命令:sudo chmod 777 /etc/ssh/sshd_config

再次查看权限

使用vim修改配置:vim /etc/ssh/sshd_config

修改后将权限改回来:sudo chmod 644/etc/ssh/sshd_config

重启ssh服务器:sudo /etc/init.d/ssh restart

此时已经将密码改为root用户的密码但是我们还是不知道密码

Ubuntu的默认root密码是随机的,即每次开机都有一个新的root密码。我们可以在终端输入命令 sudo passwd,然后输入当前用户的密码,enter,

终端会提示我们输入新的密码并确认,此时的密码就是root新密码。修改成功后,输入命令 su root,再输入新的密码就ok了

分析没有默认的,因为你还没给root设置密码,第一个 user 是在 admin 组 ,所以他可以给 root 设置密码 , so
sudo passwd root
[sudo] password for you :---> 输入你的密码,不会显示

Enter new UNIX password:

--- > 设置root 密码
Retype new UNIX password:

此时使用设置的密码登录就行

登录成功,一切ok