天天看點

VisualBox 克隆CentOS 7.6 後,ip,源,禁止root遠端登入,主機,防火牆,ssh密鑰登入10、切換時區13、 終端顯示bash-4.2$ 不顯示使用者名和主機名

20181213 VisualBox 安裝 CentOS 7.6 操作記錄

20190328 克隆一個CentOS 7.6,修改主機名和IP

1、下載下傳

官網下載下傳位址: https://wiki.centos.org/Download
找到
	i386   Everything (ISO), Minimal (ISO), NetInstall (ISO)
選擇 阿裡雲鏡像 下載下傳
	http://mirrors.aliyun.com/centos/7.6.1810/isos/x86_64/CentOS-7-x86_64-DVD-1810.iso
           

2、 開始安裝,記住滑鼠切換鍵 : 左邊的 Win !切記!切記!切記!

安裝過程(以及以後運作中)隻要操作滑鼠就會彈出警告提示: 
前面一大堆英文( 意思就是 : 是否 Capture ?)
注意記住切換提示:
The host key is currently defined as Left ⌘.
           

3、在 Ubuntu Server 1804 下遠端安裝時,不會出現以上提示

總是會有 2 個滑鼠箭頭
如果其中實際有效的滑鼠總是到不了頂部的 “Done”,說明圖形化支援不好!需要重新開機伺服器!
切記: Ubuntu Server上安裝好 VisualBox 之後,一定要至少重新開機一次!

CentOS 7 不分伺服器版和桌面版!
在安裝過程中,會出現一個圖形界面,用于設定時間、語言、安裝目标磁盤、安裝類型...
*** 安裝類型:預設時最小化安裝!當然就是伺服器版了!
           

4、首次啟動時,沒有 網卡位址 (最好直接以 root 登入)

** 後續修改 ip 位址方式也是一樣

ip a
看到我的網卡名字:enp0s3 ,但是沒有配置設定 ip

虛拟機 : Network —Network setting —Bridget adapter
橋接方式也沒有 ip位址!

如果不是 root 登入,先 su 切換到 root
cd /etc/sysconfig/network-scripts
sudo vim ifcfg-enp0s3
到最後一行,修改為YES
ONBOOT=YES

重新開機網卡服務
	systemctl restart network.service

ip a
傳回結果:
	1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
		link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
		inet 127.0.0.1/8 scope host lo
		   valid_lft forever preferred_lft forever
		inet6 ::1/128 scope host 
		   valid_lft forever preferred_lft forever
	2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
		link/ether 08:00:27:63:e6:f5 brd ff:ff:ff:ff:ff:ff
		inet 192.168.1.100/24 brd 192.168.1.255 scope global noprefixroute dynamic enp0s3
		   valid_lft 3253sec preferred_lft 3253sec
		inet6 fe80::ba3f:1d96:dc67:fbf3/64 scope link noprefixroute 
		   valid_lft forever preferred_lft forever
操作到這裡就可以離開虛拟機 ,直接以 root 使用者身份 ssh 登入!
可以先确認一下 sshd 是否安裝、運作
ps -ef |grep sshd

現在可以 ssh 到這個 dhcp 配置設定的位址去遠端操作了!
ssh [email protected]

在 Ubuntu Server 下沒有安裝 dhcp 服務,是以,我還是直接設定了靜态位址
	BOOTPROTO=static
	IPADDR=192.168.0.184
	NETMASk="255.255.255.0"
	GATEWAY=192.168.0.1
	DNS1=223.5.5.5
	
再次重新開機網卡服務
	sudo systemctl restart network.service
這時候 ssh 連結可能就死在那裡了,重新打開一個 ssh 終端
不放心的話, sudo reboot
ssh [email protected]
           

5、安裝基本工具,将 user賬戶 加入 sudo

1)、yum install vim
雖然我沒有要求 update ,但是還是看到他安裝了一大堆東西
摘錄一部分如下
......
	正在安裝:
 vim-enhanced                x86_64      2:7.4.160-5.el7        base      1.0 M
為依賴而安裝:
 gpm-libs                    x86_64      1.20.7-5.el7           base       32 k
 perl                        x86_64      4:5.16.3-293.el7       base      8.0 M
 perl-Carp                   noarch      1.26-244.el7           base       19 k
 perl-Encode                 x86_64      2.51-7.el7             base      1.5 M
......
主要是一大堆依賴所需的工具,大部分都是 perlXXX

2)、yum install wget

3)、現在使用的 root ssh 登入,為了後續安全操作,先加入 user 到 sudoer
vi /etc/sudoers
找到并且按照這行增加一行 dhbm 
	root    ALL=(ALL)       ALL
	user 	ALL=(ALL)	ALL

操作到這裡就可以 exit ,重新以 dhbm 使用者身份 ssh 登入!
           

6、 切換國内源 (阿裡雲)

1)、參考
https://blog.csdn.net/Pipcie/article/details/80005006

2)、檢視目前 源 清單
yum repolist
傳回結果:
	已加載插件:fastestmirror
	Determining fastest mirrors
	 * base: mirrors.163.com
	 * extras: mirrors.cn99.com
	 * updates: mirrors.163.com
	base                                                     | 3.6 kB     00:00     
	extras                                                   | 3.4 kB     00:00     
	updates                                                  | 3.4 kB     00:00     
	(1/4): extras/7/x86_64/primary_db                          | 156 kB   00:00     
	(2/4): base/7/x86_64/group_gz                              | 166 kB   00:00     
	(3/4): base/7/x86_64/primary_db                            | 6.0 MB   00:03     
	(4/4): updates/7/x86_64/primary_db                         | 1.3 MB   00:03     
	源辨別                              源名稱                                狀态
	base/7/x86_64                       CentOS-7 - Base                       10,019
	extras/7/x86_64                     CentOS-7 - Extras                        321
	updates/7/x86_64                    CentOS-7 - Updates                       599
	repolist: 10,939

3)、下載下傳、加載 阿裡雲鏡像源
sudo wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

sudo yum clean all
sudo yum makecache

*** 如果發生:"Failed connect to mirrors.aliyuncs.com:80; 拒絕連接配接"
*** 以上 3 條指令都要 sudo ,重新來過

再次檢視 yum repolist
傳回結果:
	已加載插件:fastestmirror
	Loading mirror speeds from cached hostfile
	 * base: mirrors.aliyun.com
	 * extras: mirrors.aliyun.com
	 * updates: mirrors.aliyun.com
	源辨別                   源名稱                                           狀态
	base/7/x86_64            CentOS-7 - Base - mirrors.aliyun.com             10,019
	extras/7/x86_64          CentOS-7 - Extras - mirrors.aliyun.com              321
	updates/7/x86_64         CentOS-7 - Updates - mirrors.aliyun.com             599
	repolist: 10,939

4)、添加第三方EPEL源 (還是選 阿裡雲)
sudo wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
sudo yum clean all
sudo yum makecache

再次檢視 yum repolist
傳回結果:
	已加載插件:fastestmirror
	Loading mirror speeds from cached hostfile
	 * base: mirrors.aliyun.com
	 * extras: mirrors.aliyun.com
	 * updates: mirrors.aliyun.com
	源辨別                源名稱                                              狀态
	base/7/x86_64         CentOS-7 - Base - mirrors.aliyun.com                10,019
	epel/x86_64           Extra Packages for Enterprise Linux 7 - x86_64      12,746
	extras/7/x86_64       CentOS-7 - Extras - mirrors.aliyun.com                 321
	updates/7/x86_64      CentOS-7 - Updates - mirrors.aliyun.com                599
	repolist: 23,685

** 注意:多出來一個epel/x86_64  Extra Packages for Enterprise Linux 7 - x86_64
           

7、禁止root賬戶ssh遠端登入

sudo vim /etc/ssh/sshd_config
找到 PermitRootLogin 
去掉這行的注釋 # 
yes更改為no 

重新加載 sshd 服務
	sudo systemctl restart sshd

再次嘗試 root ssh 遠端登入
ssh [email protected]
	[email protected]'s password: 
	Permission denied, please try again.
	[email protected]'s password: 
           

8、錯誤:Cannot find a valid baseurl for repo: base/7/x86_6

yum install vim 時出現 Cannot find a valid baseurl for repo: base/7/x86_6
ping www.baidu.com 不通

參考:
https://www.cnblogs.com/dadadechengzi/p/6670530.html

使用 nmcli 重新設定 DNS 位址
nmcli connection show
nmcli con mod enp0s3 ipv4.dns "114.114.114.114"

nmcli con up enp0s3
ping www.baidu.com 可以了!
先安裝一下簡單工具
yum install vim
yum install wget
           

9 、修改主機名稱

參考:
https://blog.csdn.net/xuheng8600/article/details/79983927

檢視目前的主機名稱 (3 種名稱!不知道都有什麼作用?)
hostnamectl --static
hostnamectl --transient
hostnamectl --pretty

重設主機名稱
sudo hostnamectl set-hostname centos7-77
sudo hostnamectl set-hostname centos7-77
sudo hostnamectl set-hostname centos7-77 --pretty

修改 hosts
sudo vim /etc/hosts

# 127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
# ::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
127.0.0.1       centos7-77
::1             centos7-77

替換::%s/77/71/g

直接檢視名稱已經改變
sudo reboot 才能看到顯示改變了?

疑問:127.0.0.1   localhost... 需要注釋掉嗎?會不會不認識 localhost?待處理
           

10、切換時區

指令是 timedatectl

timedatectl --help

檢視目前時區

** 直接 timedatectl ,沒有 timedatectl get-timezone 指令

timedatectl

傳回結果如下:

Local time: 五 2019-04-05 21:21:56 EDT
	  Universal time: 六 2019-04-06 01:21:56 UTC
	        RTC time: 六 2019-04-06 01:21:55
	       Time zone: America/New_York (EDT, -0400)
	     NTP enabled: yes
	NTP synchronized: yes
	 RTC in local TZ: no
	      DST active: yes
	 Last DST change: DST began at
	                  日 2019-03-10 01:59:59 EST
	                  日 2019-03-10 03:00:00 EDT
	 Next DST change: DST ends (the clock jumps one hour backwards) at
	                  日 2019-11-03 01:59:59 EDT
	                  日 2019-11-03 01:00:00 EST
           

timedatectl list-timezones |grep Asia

找到 Asia/Shanghai

timedatectl set-timezone “Asia/Shanghai”

** 如果提示錯誤:Failed to set time zone: Invalid time zone ‘“Asia/Shanghai”’,去掉引号!

timedatectl set-timezone Asia/Shanghai

驗證一下

date

2019年 04月 06日 星期六 09:24:54 CST

和本地時間對上了!

11、檢視系統資訊

  1. 檢視版本資訊位置

    ll /etc/centos

    -rw-r–r--. 1 root root 38 11月 23 21:16 /etc/centos-release

    -rw-r–r--. 1 root root 51 11月 23 21:16 /etc/centos-release-upstream

  2. 檢視版本資訊

    cat /etc/centos-release

    CentOS Linux release 7.6.1810 (Core)

  3. 檢視核心版本

    uname -r

    3.10.0-957.el7.x86_64

  4. 檢視 64位 還是 32 位

    getconf LONG_BIT

    64

12、 關閉 SELinux

檢視 SELinux

sestatus

SELinux status: disabled

getenforce

Disabled

臨時關閉

setenforce 0

永久關閉

sudo vim /etc/selinux/config

# by wzh 20190329 disable SELINUX

SELINUX=disabled

# SELINUX=enforcing

重新開機才能生效!

檢視 SELinux

sestatus

SELinux status: disabled

13、 終端顯示bash-4.2$ 不顯示使用者名和主機名

參考

https://blog.csdn.net/qq_33624294/article/details/52556856

cp -a /etc/skel/. /home/登入名

我的登入賬戶是 dhbm,是以

cp -a /etc/skel/. /home/dhbm

退出後,重新打開一個 Terminal,再進來就 ok!

14 、防火牆操作

  1. 檢視防火牆狀态

    sudo systemctl status firewalld

    sudo firewall-cmd --state

    running

  2. 防火牆基本指令

    # 開啟

    service firewalld start

    # 重新開機

    service firewalld restart

    # 關閉

    sudo service firewalld stop

    # 檢視防火牆規則

    sudo firewall-cmd --list-all

    sudo firewall-cmd --state

  3. 開啟 8080 端口

    sudo firewall-cmd --zone=public --add-port=8080/tcp --permanent

    重新開機防火牆

    sudo systemctl restart firewalld.service

    sudo firewall-cmd --reload

  4. 不知道為什麼,就把自己關在外面了 ssh 連接配接不上去了!

    sudo firewall-cmd --list-all

    public (active)

    target: default

    icmp-block-inversion: no

    interfaces: enp0s3

    sources:

    services: ssh dhcpv6-client

    ports:

    protocols:

    masquerade: no

    forward-ports:

    source-ports:

    icmp-blocks:

    rich rules:

    ** 可以看到,ports 一個都沒有!

    ** 幹脆重新增加端口的時候,先加上 20,22 端口

    sudo firewall-cmd --zone=public --add-port=80/tcp --permanent

    sudo firewall-cmd --zone=public --add-port=22/tcp --permanent

    sudo firewall-cmd --zone=public --add-port=21/tcp --permanent

    sudo firewall-cmd --zone=public --add-port=20/tcp --permanent

    sudo firewall-cmd --zone=public --add-port=8080/tcp --permanent

    sudo firewall-cmd --zone=public --add-port=4433/tcp --permanent

    重新開機防火牆

    sudo systemctl restart firewalld.service

    重新檢視防火牆規則

    sudo firewall-cmd --list-all

    public (active)

    target: default

    icmp-block-inversion: no

    interfaces: enp0s3

    sources:

    services: ssh dhcpv6-client

    ports: 80/tcp 22/tcp 21/tcp 20/tcp 8080/tcp 4433/tcp

    protocols:

    masquerade: no

    forward-ports:

    source-ports:

    icmp-blocks:

    rich rules:

    ** 現在可以安全的退出、重新 ssh 了

15、設定 ssh 密鑰登入

  1. 如果 沒有 .ssh 目錄,先 mkdir .ssh & cd .ssh

    #vim authorized_keys

    插入預先制作好的公鑰

  2. #vim /etc/ssh/sshd_config

    #配置密鑰

    AuthorizedKeysFile .ssh/authorized_keys

    #使用公鑰

    PubkeyAuthentication yes

    #禁用密碼登入,務必測試公鑰登入完全正确之後

    PasswordAuthentication no

  3. 重新開機 sshd

    #systemctl restart sshd

繼續閱讀