文章

proxmox的安装与使用

  编辑于:2019-01-26
文章目录

前言

最近入手了一台杜甫,但是天天吃灰,所以最近研究了一下proxmox,打算在上面装上Windows和linux啥啥啥的一机多用。

安装

准备

proxmox只能安装在debian上,所以确保你的系统是debian,最好是升级到debian9,如果主机商没有提供debian9的话,可以按照以下方法升级。
debian7升级到debian8

apt-get update
apt-get upgrade
sed s/wheezy/jessie/ /etc/apt/sources.list | tee /etc/apt/sources.list
apt-get update
apt-get upgrade
apt-get dist-upgrade

debian8升级到debian9

apt-get update
apt-get upgrade
sed s/jessie/stretch/ /etc/apt/sources.list | tee /etc/apt/sources.list
apt-get update
apt-get upgrade
apt-get dist-upgrade

期间遇到任何提示都选择 Y 就行了,最后都执行完了后执行 reboot 重启系统!
反正总之就是你需要 debian9 的系统!!!!!

安装proxmox

proxmox 是一款只支持 debian 系统的虚拟化环境,可以安装基于 KVM 和 LXC(openvz 进化版)的虚拟机,使用很方便,有图形界面。接下来安装 proxmox5.X 系列。

编辑/etc/hosts

比如你登录服务器后显示root@server1,那么你的服务器的名称就是server1, 你可以通过修改/etc/hostname文件修改它。然后你需要保持你的/etc/hosts 文件如下:

127.0.0.1       localhost.localdomain localhost
167.99.172.150 server1.proxmox.com server1 pvelocalhost
 
# The following lines are desirable for IPv6 capable hosts
::1     localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

安装 Proxmox VE

配置 repository

echo "deb http://download.proxmox.com/debian/pve stretch pve-no-subscription" > /etc/apt/sources.list.d/pve-install-repo.list
wget http://download.proxmox.com/debian/proxmox-ve-release-5.x.gpg -O /etc/apt/trusted.gpg.d/proxmox-ve-release-5.x.gpg
apt update && apt dist-upgrade

遇到如下界面选择keep the local version回车即可!

安装 Proxmox VE 包

apt install proxmox-ve postfix open-iscsi

遇到以下提示,我们选择local only即可。

然后重启你的系统 proxmox5.X 就安装完成了!

配置 Proxmox

配置IPV4网络

开启 BBR 及 ipv4转发
编辑/etc/sysctl.conf
按 Ctrl+K 清空原有所有配置,改成如下

net.core.default_qdisc=fq
net.ipv4.tcp_congestion_control=bbr
net.ipv4.conf.all.rp_filter=1
net.ipv4.icmp_echo_ignore_broadcasts=1
net.ipv4.conf.default.forwarding=1
net.ipv4.conf.default.proxy_arp = 0
net.ipv4.ip_forward=1
kernel.sysrq = 1
net.ipv4.conf.default.send_redirects = 1
net.ipv4.conf.all.send_redirects = 0

然后执行以下命令使设置生效

sysctl -p

执行命令

ip addr


如上图,这里的主端口是 eth0,也就是绑定了你 ipv4 和 ipv6 地址的端口,根据你的情况看!

我们要修改/etc/network/interfaces文件,如下

auto lo
iface lo inet loopback

auto eno1
iface eno1 inet static
        address  你的IP
        netmask  255.255.255.0
        gateway  你的网关
auto vmbr0
#private sub network
iface vmbr0 inet static
        address  10.10.10.1
        netmask  255.255.255.0
        bridge_ports none
        bridge_stp off
        bridge_fd 0

        post-up   iptables -t nat -A POSTROUTING -s '10.10.10.0/24' -o eno1 -j MASQUERADE
        post-down iptables -t nat -D POSTROUTING -s '10.10.10.0/24' -o eno1 -j MASQUERADE
	post-up iptables -t nat -A PREROUTING -i eno1 -p tcp --dport 3389 -j DNAT --to 10.10.10.100:3389
	post-down iptables -t nat -D PREROUTING -i eno1 -p tcp --dport 3389 -j DNAT --to 10.10.10.100:3389

保存退出,然后执行命令

/etc/init.d/networking restart

配置IPV6网络

我的服务器在ONLINE,且官方给的教程安装,不适用于最新的ProxmoxVE环境,即使按照教程修改配置好,又会出现一个小时左右就断开连接的问题,所以我们另外使用odhcp6c来获得IPv6地址。
首先安装软件源,编辑/etc/apt/sources.list添加以下内容:

#DHCP6 Client
deb http://httpredir.debian.org/debian experimental main

然后安装odhcp6c

apt-get update
apt-get install odhcp6c

通过ifconfig查看你的物理网卡的名称,例如eno1
通过online网页的服务器控制台得到IPv6地址信息,如果你是oneprovider的用户,需要发工单获取ipv6DUID信息:

IPv6:2001:123:456:789::1/64
DUID:00:03:00:01:3f:12:34:56:78:90

/etc/network/interfaces中添加以下内容

post-up odhcp6c -P 64 -c 00:03:00:01:3f:12:34:56:78:90 eno1 -d
post-up ip -6 a a 2001:123:456:789::1/64 dev eno1

重启服务器后即可获得IPv6地址。
首先,配置IPv6网络,编辑/etc/modprobe.d/local.conf,修改或者添加如下内容:

options ipv6 disable=0

编辑/etc/modules,添加如下字符:

ipv6

开启IPv6转发,编辑/etc/sysctl.conf,添加以下内容到尾部:

net.ipv6.conf.eno1.autoconf=0
net.ipv6.conf.eno1.accept_ra=2
net.ipv6.conf.default.forwarding=1
net.ipv6.conf.all.forwarding=1
net.ipv6.conf.default.proxy_ndp=1
net.ipv6.conf.all.proxy_ndp=1

其中红色部分修改为自己的网卡名:

net.ipv6.conf.eno1.autoconf=0
net.ipv6.conf.eno1.accept_ra=2

接着执行以下命令,使配置生效。

sysctl -p

最后,编辑/etc/network/interfaces,内容如下:

auto lo
iface lo inet loopback

auto eno1
iface eno1 inet static
	address  你的IP
	netmask  255.255.255.0
	gateway  你的网关

auto vmbr0
iface vmbr0 inet static
	address  10.10.10.1
	netmask  255.255.255.0
	bridge-ports none
	bridge-stp off
	bridge-fd 0

iface vmbr0 inet6 static
	address  你的IPV6地址::2
	netmask  64

        post-up   iptables -t nat -A POSTROUTING -s '10.10.10.0/24' -o eno1 -j MASQUERADE
        post-down iptables -t nat -D POSTROUTING -s '10.10.10.0/24' -o eno1 -j MASQUERADE
	post-up iptables -t nat -A PREROUTING -i eno1 -p tcp --dport 3389 -j DNAT --to 10.10.10.100:3389
	post-down iptables -t nat -D PREROUTING -i eno1 -p tcp --dport 3389 -j DNAT --to 10.10.10.100:3389
	post-up odhcp6c -P 64 -c 你的DUID eno1 -d
	post-up ip -6 a a 你的IPV6地址::1/64 dev eno1
	post-up ip -f inet6 neigh add proxy IPV6::2 dev vmbr0
	post-up ip -f inet6 neigh add proxy IPV6::3 dev eno1
	post-up ip -f inet6 route add IPV6::3 dev vmbr0

post-up ip -f inet6 neigh add proxy IPV6::2 dev vmbr0这一行是添加虚拟网卡的转发。
需要把上面的eno1改成你实际使用的接口,实际使用的接口可以用ifconfig来查看,另外,上面只针对一个IPV6地址进行了转发,如果你有多个IPV6地址需要转发,需要添加如下格式的配置。

	post-up ip -f inet6 neigh add proxy IPV6::3 dev eno1
	post-up ip -f inet6 route add IPV6::3 dev vmbr0

重启服务器,使设置生效。
免重启添加转发规则
比如我们在 vmbr1 下新加了一个转发 6666 到虚拟机 6666 的规则,我们可以执行以下命令

ifdown vmbr1
ifup vmbr1

然后在虚拟机的网络切换那里把网络端口随便切换一个,再切换回来,就直接生效了!

安装 windows 系统

我们打开

https://你的IP:8006

然后输入你的 root 账户登录就行了,语言可选 Chinese 中文!界面如下

下载镜像

首先我们需要下载 windows 的镜像,这里我们选择安装 windows2008_R2 系统,并将镜像放到/var/lib/vz/template/iso/目录,可以用SSH登录到服务器,然后使用wget等命令下载。

创建虚拟机

①点击右上角的创建虚拟机,随便设置个名称,点下一步。
②操作系统:镜像文件选择刚才的那个 ISO,设置如下图,根据你要安装的 windows 版本设置,这里是 win2008_r2。

③硬盘:大小随意设置,最低 30G 吧,这个无所谓!其它设置默认,不影响操作!
④CPU:如果你是 i3/i5,核那里选择 2 就可以了一般,i7/E3 之类的可以选择 3 或者 4,根据你的服务器情况,这个可以随时更改的,没关系~
⑤内存:一般设置成 2048 也就是 2G 就可以了,win2008 不怎么耗内存的!
⑥网络:选择桥接模式,桥接刚才我们创建的那个 vmbr1 端口就可以了!
最后确认完成就 OK 了
接下来点击启动我们选中左边刚创建的那个虚拟机,然后点击启动,再点控制台!

安装 win2008

打开控制台后,首先点击下一步,然后点击立即安装,然后选择下图中的那项点下一步

然后接受条款,下一步,然后选择自定义安装,下一步,然后直接下一步开始 win2008 的安装,接下来等个几分钟就可以进入系统了。

配置网络

进入系统后,首先我们将 windows 防火墙关闭,然后我们配置网络如下,保存设置,这样网络就通了
IPV4配置

IPV6配置

远程桌面

直接在系统中开启远程桌面即可,如果无法远程登录,重启一下服务器就可以了。

补充

解决apt update报错的问题。
修改/etc/apt/sources.list.d/pve-enterprise.list
注释掉

#deb https://enterprise.proxmox.com/debian/pve stretch pve-enterprise

当然删除/etc/apt/sources.list.d/pve-enterprise.list这个文件也是可以的。
参考链接:
https://www.mingshao.net/proxmox-open-nat-ipv4-and-ipv6-vps.html
https://mengniuge.com/hetzner-proxmox-nat-set-net.html
https://ymgblog.com/2018/04/09/476/
https://pve.proxmox.com/wiki/Network_Configuration
https://www.fmqcloud.com/archives/pve.html

发表回复