vps centos centos7服务器
老铁们,大家好,相信还有很多朋友对于vps centos和centos7服务器的相关问题不太懂,没关系,今天就由我来为大家分享分享vps centos以及centos7服务器的问题,文章篇幅可能偏长,希望可以帮助到大家,下面一起来看看吧!
如何在VPS上安装和访问CentOS 7远程桌面
我们假设你已经创建了CentOS 7的VPS实例(比如,使用DigitalOcean或者 Amazon EC2)。请确保你的VPS实例有至少1GB的内存。不然,CentOS将会在你访问远程桌面的时候会崩溃。
第一步:安装CentOS桌面
如果你现在安装的CentOS版本是没有桌面的最小版本,你需要先在VPS上安装桌面(比如GNOME)。比如,DigitalOcean的镜像就是最小版本,它需要如下安装桌面GUI
# yum groupinstall"GNOME Desktop"
在安装完成之后重启VPS。
第二步:安装和配置VNC服务器
接下来就是安装和配置VNC服务器。我们使用的是TigerVNC,一个开源的VNC服务实现。
# yum install tigervnc-server
现在创建一个用户账户(比如:xmodulo)用来访问远程桌面。
# useradd xmodulo
# passwd xmodulo
当一个用户尝试使用VNC访问远程桌面时,VNC守护进程就会启动来处理这个请求。这意味着你需要为每个用户创建一个独立的VNC配置文件。
CentOS依靠systemd来管理和配置系统服务。所以我们将使用systemd来为用户xmodulo配置VNC服务器。
首先让我们使用下面任意一条命令来检查VNC服务器的状态。
# systemctl status vncserver@:.service
# systemctl is-enabled vncserver@.service
默认的,刚安装的VNC服务并没有激活(禁用)。
现在复制一份通用的VNC服务文件来为用户xmodulo创建一个VNC服务配置。
# cp/lib/systemd/system/vncserver@.service/etc/systemd/system/vncserver@:1.service
用本文编辑器来打开配置文件,用实际的用户名(比如:xmodulo)来替换[Service]下面的。同样。在ExecStart后面追加"-geometry"参数。最后,要修改下面“ExecStart”和“PIDFile”两行。
# vi/etc/systemd/system/vncserver@:1.service
[Service]
Type=forking
# Clean any existing files in/tmp/.X11-unix environment
ExecStartPre=/bin/sh-c'/usr/bin/vncserver-kill%i>/dev/null 2>&1||:'
ExecStart=/sbin/runuser-l xmodulo-c"/usr/bin/vncserver%i-geometry 1024x768"
PIDFile=/home/xmodulo/.vnc/%H%i.pid
ExecStop=/bin/sh-c'/usr/bin/vncserver-kill%i>/dev/null 2>&1||:'
现在为用户xmodulo设置密码(可选)。首先切换到该用户,并运行vncserver命令。
# su- xmodulo
# vncserver
你会被提示输入用户的VNC密码。密码设置完成后,你下次需要用这个密码来访问你的远程桌面。
最后,重新加载服务来使新的VNC配置生效:
# systemctl daemon-reload
在启动时自动启动VNC服务:
# systemctl enable vncserver@:1.service
检查vnc服务正在监听的端口:
# netstat-tulpn| grep vnc
端口5901是VNC默认的客户端连接到VNC服务器使用的端口。
第三步:通过SSH连接到远程桌面
从设计上说,VNC使用的远程帧缓存(RFB)并不是一种安全的协议,那么在VNC客户端上直接连接到VNC服务器上并不是一个好主意。任何敏感信息比如密码都可以在VNC流量中被轻易地泄露。因此,我强烈建议使用SSH隧道来加密你的VNC流量。
在你要运行VNC客户端的本机上,使用下面的命令来创建一个连接到远程VPS的SSH通道。当被要输入SSH密码时,输入用户的密码。
$ ssh xmodulo@<VPS-IP-address>-L 5901:127.0.0.1:5901
用你自己的VNC用户名来替换“xmodulo”,并填上你自己的VPS IP地址。
一旦SSH通道建立之后,远程VNC流量就会通过ssh通道路由并发送到127.0.0.1:5901。
现在启动你最爱的VNC客户端(比如:vinagre),来连接到127.0.0.1:5901。
你将被要求输入VNC密码。当你输入VNC密码时,你就可以安全地连接到CentOS的远程桌面了。
debian和centos相比,哪个更好
1、在软件版本方面
CentOS中的Web服务器应用程序所需的主要软件版本是:Apache-> 2.2.15;PHP-> 5.3.3;MySQL-> 5.1.66;PostgreSQL-> 8.4.13。Debian Stable Wheezy已拥有这些软件版本:Apache-> 2.2.22;PHP-> 5.4.4;MySQL-> 5.5.30;PostgreSQL-> 9.1.9。
2、在软件升级方面
选择软件时,将在生产环境中使用任何类型的软件,应该始终考虑升级它的难易程度。CentOS不是容易升级的GNU/ Linux发行版,与升级相比,通常强烈建议全新安装。将Debian从一个稳定版本升级到下一稳定版本很容易,操作也比较简单
3、在稳定性方面
CentOS是最受测试和稳定的GNU/ Linux发行版之一,这就是为什么它也是最常用的发行版之一。CentOS两次发行之间的间隔确保了充足的时间进行彻底的测试,并且将任何安全修复程序都移植到CentOS的较早版本中,以解决在构建新版本时发现的任何漏洞。Debian被认为是比许多其他发行版更稳定的Linux发行版。对于企业而言,这是一个不错的选择,因为该版本中的错误导致的开销更少。它还为修补安全漏洞提供了时间,因此这些发行版通常比其他Linux发行版的发行版更安全。
CentOS7开启BBR为VPS加速详解
什么是BBR
TCP BBR是谷歌出品的TCP拥塞控制算法。BBR目的是要尽量跑满带宽,并且尽量不要有排队的情况。BBR可以起到单边加速TCP连接的效果。替代锐速再合适不过,毕竟免费。
Google提交到Linux主线并发表在ACM queue期刊上的TCP-BBR拥塞控制算法。继承了Google“先在生产环境上部署,再开源和发论文”的研究传统。TCP-BBR已经再YouTube服务器和Google跨数据中心的内部广域网(B4)上部署。由此可见出该算法的前途。
TCP-BBR的目标就是最大化利用网络上瓶颈链路的带宽。一条网络链路就像一条水管,要想最大化利用这条水管,最好的办法就是给这跟水管灌满水。
BBR解决了两个问题:
再有一定丢包率的网络链路上充分利用带宽。非常适合高延迟,高带宽的网络链路。
降低网络链路上的buffer占用率,从而降低延迟。非常适合慢速接入网络的用户。
项目地址:
Google在 2016年9月份开源了他们的优化网络拥堵算法BBR,最新版本的 Linux内核(4.9-rc8)中已经集成了该算法。
对于TCP单边加速,并非所有人都很熟悉,不过有另外一个大名鼎鼎的商业软件“锐速”,相信很多人都清楚。特别是对于使用国外服务器或者VPS的人来说,效果更佳。
网上有很多在 Debian和 Ubuntu系统下启用 BBR的教程,我就不粘贴了,我自己一直用的是 CentOS,本文介绍一下在 64位 CentOS 7系统下开启BBR的方法。
升级内核
第一步首先是升级内核到支持BBR的版本:
#下载 linux内核 4.9-rc8的 deb包
wget
#加压缩下载好的 deb包
ar x linux-image-4.9.0-rc8-amd64-unsigned_4.9~rc8-1~exp1_amd64.deb
#执行完上面的命令后,会得到*control.tar.gz*,*data.tar.xz*,*debian-binary*三个文件
#继续解压*data.tar.xz*文件
tar-Jxf data.tar.xz
#执行完这一步的命令之后,会得到*boot*,*lib*,*usr*三个文件夹
#安装可引导的内核镜像
install-m644 boot/vmlinuz-4.9.0-rc8-amd64/boot/vmlinuz-4.9.0-rc8-amd64
#复制内核模块
cp-Rav lib/modules/4.9.0-rc8-amd64/lib/modules/
#分析可载入模块的相依性,产生模块依赖的映射文件
depmod-a 4.9.0-rc8-amd64
# centos 6以上版本执行这条命令
dracut-f-v--hostonly-k'/lib/modules/4.9.0-rc8-amd64'/boot/initramfs-4.9.0-rc8-amd64.img 4.9.0-rc8-amd64
#更新 grub2的配置文件
grub2-mkconfig-o/boot/grub2/grub.cfg
调整GRUB启动顺序
在安装好新版本内核以后,要先用新安装的内核引导系统看看能否正常启动,下面是直接调整 GRUB2启动顺序的命令:
#查看可用的启动项
cat/boot/grub2/grub.cfg|grep CentOS
执行完这条命令以后,能看到多条以 menuentry开头的项目,每一项都是一个内核引导选项,紧跟在 menuentry后面,以单引号包围的部分就是这一条启动项的“title”,比如我的是:
menuentry'CentOS Linux(4.9.0-rc8-amd64) 7(Core)'--class rhel fedora--class gnu-linux....
menuentry'CentOS Linux(3.10.0-327.36.3.el7.x86_64) 7(Core)'--class rhel fedora--class gnu-linux...
menuentry'CentOS Linux(0-rescue-731edbf944d54068a3249dee56ed3727) 7(Core)'--class rhel fedora--class gnu-linux--class gnu...
可以看到第一条单引号中的就是我们新安装的 4.9-rc8内核,我们要使用这一项来引导。
#设置默认 4.9-rc8的引导项为默认引导项
grub2-set-default"CentOS Linux(4.9.0-rc8-amd64) 7(Core)"
#验证一下,如果上一条命令执行成功,执行下面的命令应该能看到 `saved_entry=CentOS Linux(4.9.0-rc8-amd64) 7(Core)`
grub2-editenv list
#重新生成 grub2的配置文件
grub2-mkconfig-o/boot/grub2/grub.cfg
#重启系统
reboot
修改sysctl开启 BBR
重启系统之后,通过 uname-a或者其它命令可以看到我们的内核已经是 4.9.0-rc8-amd64了,接下来开启 BBR
echo"net.core.default_qdisc=fq">>/etc/sysctl.conf
echo"net.ipv4.tcp_congestion_control=bbr">>/etc/sysctl.conf
#加载/etc/sysctl.conf文件中的参数并显示,主要看看有没有报错的设置(显示的结果与你的配置文件内容有关)
sysctl-p
#验证 bbr是否开启,如果成功,应该会看到 net.ipv4.tcp_congestion_control= bbr
sysctl net.ipv4.tcp_available_congestion_control
#依然是验证,如果成功,应该会看到类似 tcp_bbr 16384 3这样的文字
lsmod| grep bbr