服务器从零开始(1D)-user+sudo+vnc

简介

我开始这个系列,是为了系统性的学习和记录企业应用服务的环境搭建和应用部署等整个过程,这个系列会精彩呈现如何通过一点点的砌砖,铸成一座高楼。其中可能会包含了一些比较初级的内容,你们如果早就掌握了可以跳过,挑选自己关心的章节。
这个系列开始的背景,是一位慷慨的许姓朋友赞助了我一台腾讯云服务器,CentOS7.4+单核+2G内存。配置低了一点,但考虑到只是自己玩玩也还凑合,下面就开始我们漫漫长征第一步。

创建用户、组、sudo

用root 用户
1、创建组 fzu

[root@VM_60_202_centos ~]#groupadd fzu                  --创建组 fzu
[root@VM_60_202_centos ~]#useradd -g fzu -m kerry       --创建用户 kerry 并加入fzu
[root@VM_60_202_centos ~]#passwd kerry                  --设置/修改 kerry的密码,会弹出输入密码,再确认密码

2、创建/u01 目录,并将 /u01 的权限赋予 kerry

[root@VM_60_202_centos ~]#mkdir /u01
[root@VM_60_202_centos ~]#chown -R kerry:fzu /u01

3、给kerry 用户赋予 sudo,/etc/sudoers 文件只能用专用的 visudo 编辑器编辑,执行命令 visudo 就可以

[root@VM_60_202_centos ~]#visudo --进入 /etc/sudoers 的文本
       -- 添加上以下代码,就可以用kerry用户登录时用sudo,并且不需要输入kerry的密码进行验证。
kerry   ALL=(ALL)       NOPASSWD: ALL

安装VNC

1、首先试试服务器装了VNC没

[root@VM_60_202_centos ~]#rpm -q tigervnc tigervnc-server

没安装的话会直接出现

[root@VM_60_202_centos ~]#package tigervnc is not installed
[root@VM_60_202_centos ~]#package tigervnc-server is not installed

2、如果没有安装X-Windows 桌面的话要先安装Xwindows

[root@VM_60_202_centos ~]#yum check-update
[root@VM_60_202_centos ~]#yum groupinstall "X Window System"
[root@VM_60_202_centos ~]#yum install gnome-classic-session gnome-terminal nautilus-open-terminal control-center liberation-mono-fonts
[root@VM_60_202_centos ~]#unlink /etc/systemd/system/default.target
[root@VM_60_202_centos ~]#ln -sf /lib/systemd/system/graphical.target /etc/systemd/system/default.target
[root@VM_60_202_centos ~]#reboot

3、安装VNC packages

[root@VM_60_202_centos ~]#yum install tigervnc-server -y 

修改配置信息,在/etc/systemd/system/下建立文件夹vncserver@:1.service 把example config 文件从/lib/systemd/system/vncserver@.service复制到里面

[root@VM_60_202_centos ~]#cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:1.service

然后打开这个配置文件/etc/systemd/system/vncserver@:1.service替换掉默认用户名。找到这一行

ExecStart=/sbin/runuser -l <USER> -c "/usr/bin/vncserver %i"
PIDFile=/home/<USER>/.vnc/%H%i.pid

这里我直接用root 用户登录,所以我替换成:

ExecStart=/sbin/runuser -l root -c "/usr/bin/vncserver %i"
PIDFile=/root/.vnc/%H%i.pid

如果是其他用户的话比如john替换如下:

ExecStart=/sbin/runuser -l <USER> -c "/usr/bin/vncserver %i"
PIDFile=/home/<USER>/.vnc/%H%i.pid

重加载 systemd

[root@VM_60_202_centos ~]#systemctl daemon-reload           --重加载 systemd
[root@VM_60_202_centos ~]#vncpasswd                         --为VNC设密码

由于我这边的Centos 7 是用iptable防火墙的所以需要修改配置:

[root@VM_60_202_centos ~]#vim /etc/sysconfig/iptables            --在iptables文件,合适位置加上
-A INPUT -m state --state NEW -m tcp -p tcp --dport 5900:5903 -j ACCEPT
[root@VM_60_202_centos ~]#service iptables restart             --重启iptable

如果是用Centos 7 默认防火墙的可能需要

[root@VM_60_202_centos ~]#firewall-cmd --permanent --add-service vnc-server
[root@VM_60_202_centos ~]#systemctl restart firewalld.service

设默认启动并开启VNC

[root@VM_60_202_centos ~]#systemctl enable vncserver@:1.service
[root@VM_60_202_centos ~]#systemctl start vncserver@:1.service
    原文作者:KerryWu
    原文地址: https://segmentfault.com/a/1190000016056307
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞