0%

Linux折腾笔记:虚拟机安装Cent OS 7及SSH登陆设置

准备工作:

安装VMmare fusion
下载 cent OS

下载地址:

官方镜像:CentOS官网
国内镜像:搜狐163阿里巴巴

新建虚拟机:都是傻瓜式的,不要需要注意以下几点:
  • 在“自定义硬件”的选项中,网络适配器建议选择NAT模式,兼容性最好。

  • 在系统“安装位置”中,选择“我要配置分区”,自定义系统分区;在 LVM下拉菜单,选择 “标准分区”,之后点击加号手动进行修改,点击“添加挂载点”,最后点击“完成”,保存“接收更改”。推荐有以下是3个分区:

分区名称 空间大小
/boot 200M
/swap 4G
/ 剩余磁盘空间

另外,别忘记设置一个复杂一点的root密码。

设置网络静态IP

获取IP地址信息

在登录框中输入以下命令,获取ip地址

dhclient    // 自动获取ip地址

可以通过ping命令来验证网络是否联通

ping -c 4 www.163.com

查看当前网络状况,使用命令

ip addr    // 查看ip地址信息

需要注意的是,这里需要记下来ip address、gateway、netmask、ensXX(网卡信息),后面设置静态ip会用到。

编辑网卡配置

# vi /etc/sysconfig/network-scripts/ifcfg-ens33

注:此处的ensXX,就是前面查到的网卡信息。

ONBOOT=yes;//表示网卡随系统一起启动
BOOTPROTO=static // 用来设置网卡启动类型,dhcp表示自动获取ip地址,static表示手动设置静态ip地址
IPADDR=xxx.xxx.xxx.xxx  //dhclient获取的网址
NETMASK=255.255.255.0    //子网掩码
GATEWAEY=xxx.xxx.xxx.xxx     //网关地址
DNS1=119.29.29.29    //DNS服务器地址,这里提供的一个公共DNS

最后,先按“esc”退出编辑模式,之后再输入“:wq”进行保存。

重启ip设置

systemctl restart network.service

正常情况下,静态ip就设置好。检查是否成功,可以ping一下外网,如:

ping -c 4 www.163.com

Troubleshooting

按照教程进行到这一部后发现网络不通,提示错误 name or service not know ,又是一番折腾。这样要注意的是:

  • ip和网关必须是在同一个网段;

  • DNS设置错误也会出错,如果这个DNS地址不行,就试试8.8.8.8

远程连接虚拟机(SSH连接)

总体思路:

  • 假设有两台电脑A和B,这里的A是你要操作的电脑;B是虚拟机。

  • 先在A电脑生成密匙对(公钥、私钥各一个),私钥始终保存在A电脑不动,公钥复制出来,添加到电脑B的authorized_ keys 里面,再进行一些必要的设置,就可以从A电脑免密登陆B电脑了。

  • 注意,如果已经在A电脑上设置过keygen,比如笔者已经在搞github折腾过一会,密匙对已经存在,就不用重新生成了,只要公钥复制出来粘贴过去就可以了。

前提条件:

  • mac自带终端或者item2

输入如下命令进行连接:

ssh username@xxx.xxx.xxx.xxx -p 22

注意事项

  • 此处的username是cent os 中的账户名;

  • xxx.xxx.xxx.xxx 是刚刚设置的静态ip;

  • 22 表示连接的默认端口号,后期也可以进行编辑更改。

生成密钥对 (本机操作)

进入当前用户目录,一般root用户只需要这样即可
cd ~
创建.ssh目录并设置权限
mkdir -p .ssh
chmod 700 .ssh
进入 .ssh 目录和生成密钥对
cd .ssh
ssh-keygen

然后,一路回车即可。

注意事项:
  • 一是 ssh-keygen 的详细用法,参见ssh-keygen 中文手册

  • 二是前面生成密钥的会显示地址,记住这个地址,需要把id_rsa.pub 的内容复制出来,后面会用到。

生成密钥认证文件 (在服务器端或者通过ssh root操作)

创建认证文件
touch authorized_keys
编辑认证文件
vi /root/.ssh/authorized_keys

进入编辑界面后按i 开始编辑;把刚才复制的id_rsa.pub 内容复制到里面,稳妥起见,前面可以加一行注释,注释已#开头;

保存并退出

按esc退出编辑状态,再按:wq 保存退出

授权认证文件
chmod 600 authorized_keys

修改SSH配置(在服务器端或者 ssh root操作)

使用root登录修改配置文件:/etc/ssh/sshd_config
vi /etc/ssh/sshd_config
将下面的内容的前面的 # 去掉
#PubkeyAuthentication yes
#AuthorizedKeysFile .ssh/authorized_keys

然后,修改下面的内容的 yes 为 no

PasswordAuthentication yes

修改后效果为

RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
PasswordAuthentication no
重启SSH服务

CentOS 6.x:

service sshd restart

CentOS 7.x:

systemctl restart sshd

检验是否成功

重启虚拟机,然后使用如下命令登陆

ssh root@xxx.xxx.xxx.xxx

Tips

  • Tab 键可以实现自动补全功能,输入命令、文件名及目录前几个字母后按 Tab,系统会自动补全,很有用。

  • man 命令可以查询帮助文档。查看文档是按上下方向键或空格键翻页;按q 退出。

-------------本文结束感谢您的阅读-------------
坚持原创技术分享,您的支持将鼓励我继续创作!