伺服器建置實務上課補充教材
- 最新消息:
- 授課教材:鳥哥的 Linux 私房菜-伺服器架設篇第三版
- 每週都有可能會有上機實作,要等老師檢查完畢才能夠下課!否則就不算有來上課!
- 回首頁
- 舊版教材簡易介紹
unit 07:遠端連線伺服器 ssh 與 VNC
- 遠端連線伺服器:
- 透過遠端連線的功能登入到伺服器,經常使用於工作站,或者是多人共用伺服器的環境,包括科學運算過程當中需要用到的數值模式模擬環境。
- 常見的模式:
- 透過純文字模式,目前主流為 ssh
- 透過圖形界面,包括 VNC, RDP 以及 Linux 模擬的 XRDP 功能!
- 什麼是 ssh 服務的金鑰系統加密功能?
- 整個金鑰系統的運作流程如下圖所示:
- 練習:聽完白板上面的說明後,請說明
- 當用戶端要傳送資料給伺服器端,資料是如何進行加密與解密?(用誰的公鑰?用誰的私鑰?)
- 當伺服器端要傳送資料給用戶端,資料是如何進行加密與解密?(用誰的公鑰?用誰的私鑰?)
- 所以,那一個鑰匙是不能夠外流的?
- CentOS 7 預設提供的 ssh 伺服器,與用戶端功能操作
- 預設針對整個 Internet 放行
- 預設啟動的埠口為 port 22
- 預設提供了 root 進行遠端登入
- 同時提供 scp 與 sftp 等伺服器功能。
- 練習:
- 重新修改 ssh 的 port 22 埠口,讓這個 port 只對你的區域網路 (LAN) 以及 10.0.0.0/8 這個區網放行
- 使用 ssh 登入遠端機器
- 基本的語法如下:
[student@localhost ~]$ ssh [-p port] [account@]IP [command]
[student@localhost ~]$ exit (離開遠端伺服器)
# 請用 student 的身份登入本機一次看看:
[student@localhost ~]$ ssh localhost
# 請用 student 的身份,然後登入遠端的 root 帳號
[student@localhost ~]$ ssh root@localhost
# 承上,然後直接執行一個 tail /etc/shadow 的指令,就立刻離開伺服器
[student@localhost ~]$ ssh root@localhost tail /etc/shadow
- 練習:
- 使用 ssh root@localhost 來連接到自己的 ssh 伺服器,查看整個流程
- 登入後,查看自己家目錄的 .ssh 裡面有多出什麼資料?該資料的內容又如何?
- 登出 root 的連線
- 讓一般帳號可以變成系統管理員
- 一般帳號可以使用 su - 來切換身份,但是我們不要讓 root 的密碼流出去比較好!
- 在 CentOS 7 的環境下,使用者若加入 wheel 這個群組後,就可以使用自己的密碼來轉成 root 了!
- 這個方式相當適合於你用一般帳號以 ssh 登入系統後,再切換成為 root 喔!
- 練習:
- 使用 useradd 新建一個名為 myadm 的帳號,且密碼為 iamadmqq
- 使用 usermod 讓這個帳號加入 wheel 群組的支援
- 請在 tty3 使用 myadm 帳號登入
- 請使用『 sudo su - 』這個指令,並且輸入 myadm 看看帳號變成什麼了?
- 最終請用 exit 恢復原本的身份,然後登出 tty3 吧!
- 用 scp 遠端複製檔案
- 基本語法如下:
[student@localhost ~]$ scp [-rp] [-P port] [account@]IP:file.. dir # 這是下載
[student@localhost ~]$ scp [-rp] [-P port] file.. [account@]IP:dir # 這是上傳
- 練習:
- 在原本的 student 身份下,進入到 /dev/shm ,然後使用 scp 將 localhost 的 /etc/ssh 目錄完整的複製到本目錄下
- sshd 的啟動埠口 (port) 修改
- 修改 /etc/ssh/sshd_config,讓啟動埠口存在兩個,分別是 port 22 與 port 543
- 記得修改完設定檔,除了重新啟動服務之外,也要記得使用 netstat -ltunp 查詢一下埠口!
- 該如何使用 ssh 連線到本機的 port 543 ?
- 該如何使用 scp 連線到本機的 port 543 去下載 /etc/group 檔案?
- VNC 伺服器
- 伺服器端先安裝 tigervnc-server 之類的軟體
- 第一次使用時,請參考 vncserver 的指令與參數
- 記得參考 port number 並據以修改 iptables
- 嘗試在 client 端使用 vncviewer 啟動連線到 server 端的功能看看。
- 嘗試看看能不能每次開機都啟用這個 VNC 服務呢?
- 綜合練習:
- 服務:請啟用 ssh 放行在埠口 port 22, 5353 這兩個上面
- 防火牆:重新修改 ssh 的 port 22, 5353 埠口,讓這兩個 port 只對你的區域網路 (LAN) 以及 10.0.0.0/8 這個區網放行
- 請以 student 身份,從 192.168.40.200 這部主機上,取得 /home/student/checking.data 這個檔案,並且將這個檔案放置到 /root/ 底下去。
- 請使用 student 的身份啟動 VNC 在 port 5909 上面。
- 建立一個名為 myroot 著帳號,密碼為 iamrootqq ,且這個帳號可以使用 sudo 的功能!