virtual box虚拟机设置scp centos
经常用虚拟机和主机之间相互传输文件,virtual box提供了增强工具,但是并非任何时候都好用。所以还是用scp。
(1)虚拟机设置为桥接模式
这种模式会让虚拟机分配一个ip,并且和主机在同一网段,而且双方可以相互访问,完全可以把虚拟机看作和主机是平级的连接到路由器上。
混杂模式拒绝就行,并非所有网卡都支持,所以拒绝
(2)虚拟机里用手动配置ip(可选,我会这样做)
(3)虚拟机启用ssh,并和主机相互配置public key
#!/bin/bash
sudo dnf install openssh openssh-server
ssh-keygen
sudo systemctl start sshd
sudo systemctl status sshd
touch ~/.ssh/authorized_keys
#启用ssh登陆
sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.backup
sudo sed -i 's/#PubkeyAuthentication.*yes/PubkeyAuthentication yes/g' /etc/ssh/sshd_config
sudo sed -i 's/#AuthorizedKeysFile.*.ssh\/authorized_keys/AuthorizedKeysFile .ssh\/authorized_keys/g' /etc/ssh/sshd_config
sudo systemctl restart sshd
#开机自启
sudo systemctl enable sshd
然后添加主机的.ssh/id_rsa.pub
到虚拟机刚刚创建的authorized_keys
然后再反过来,把虚拟机的.ssh/id_rsa.pub
添加到主机的authorized_keys
因为这个时候虚拟机和主机是相互独立的,无法传输任何东西,所以我都是用邮件附件发送,要打包源文件附件,不要直接拷贝字符,容易出问题。