1. 程式人生 > >Linux系列9-網路配置和遠端訪問

Linux系列9-網路配置和遠端訪問

摘要

  • 連網方式的介紹
  • ifconfig用於命令列下配置網路
  • route配置靜態路由
  • 簡單計算機網路概念
  • ftp命令
  • 基於SSH的檔案傳輸sftpscp
  • 關於Linux系統的遠端登入

如要下載筆記和程式碼請到我的github
歡迎訪問我的主頁檢視更多文章。

連網方式

  • 連網方式:
    • 區域網(乙太網技術,基於載波偵聽、多路訪問和衝突檢測的連網協議);
    • 無線連線(WPA加密);
    • 有線寬頻連線;
    • DSL(Digital Subscriber Line)指數字使用者線路,目前主要使用ADSL,A(asymmetric)表示非對稱,即上傳和下載速度不同。
    • 撥號上網(Modem)。
  • 區域網:
    • DHCP(動態主機配置協議):自動獲取IP地址、網路掩碼、預設閘道器和域名伺服器;
    • 靜態IP:需要手動輸入上述內容(伺服器一般需要設定靜態IP)。
  • ADSL:
    • 使用乙太網PPPoE(Point to Point Protocol over Ethernet)調變解調器設定實現連線,是一種稱作”點到點”的撥號方式;
    • 連線方式1:network manager,推薦,方便配合IPV6使用;
    • 連線方式2:
      bash
      # 設定
      sudo pppoeconf
      # 開啟
      sudo pon dsl-provider
      # 關閉
      sudo poff dsl-provider

命令列下配置網路

ifconfig配置介面

  • ifconfig:用於啟動或禁用一個網路介面,同時設定其IP地址、子網掩碼及其他網路選項。
  • sudo ifconfig eth0 192.168.1.14 netmask 255.255.255.0 up,表示設定網路硬體介面的IP地址(無線網路介面往往以wlan開頭),掩碼設定,同時啟動該網路介面。
  • sudo eth0 down關閉網路介面。
  • 網路基礎:
    • IP地址:一個長4個位元組的二進位制數,每個位元組用10進位制數表示就成了常見的IP地址形式;
    • IP地址分為網路部分和主機部分(如N.N.N.H):
    • 網路部分:表示地址所指的邏輯網路;
    • 主機部分:表示網路中的一臺計算機。
    • 通過對IP地址和子網掩碼實施“與”運算,可以將網路號分離出來。
  • lo網路介面是“環回網路”,是一個沒有實際硬體介面的虛擬網路,127.0.0.1
    這個環回網路始終指向當前主機,也可以用localhost表示當前主機。

route配置靜態路由

  • 路由是定義網路中兩臺主機間如何通訊的一種機制。
  • Linux核心中維護著一張路由表,需要傳送資料包時,Linux將這個包的目標IP地址和路由表中的路由資訊比較。
    • 找到匹配項時,該資料包就會發送到這條路由對應的閘道器,閘道器負責將資料包轉發到目的地;
    • 找不到匹配項時,資料包會被髮送到預設路由指定的閘道器上;
    • 總的路線是”資料包–>閘道器–>目的地”;
    • 閘道器就是負責轉發的主機,必須處在當前可以直接連線到的網路上(不需要轉發)
  • netstat -r檢視當前系統的路由資訊。
    • 路由表中閘道器*表示不需要閘道器,意味處於同一網路(一般是網路地址,末位元組為0);
  • route:用於增加/刪除一條路由;
    • sudo route add default gw 10.71.84.2表示增加路由表項,一條預設路由;
    • sudo route add -net 10.62.74.0/24 gw 10.71.84.51增加一條目的網路路由:
    • -net表示增加的是網路地址,目的網路;
    • 10.62.74.0/24前部分是網路地址,24表示IP的網路地址佔據24位,對應子網掩碼是255.255.255.0;
    • -host:用此選項增加一條發往主機地址的路由表項。
  • 一般一個IP代表一臺主機。全0主機地址儲存為網路地址(整個網路),全1的主機地址是廣播地址(網路中的所有主機)。
  • del用於刪除路由,如sudo route del default

主機和IP間的對映

  • 主機名是為了方便記憶,而資料傳送時需要的是IP地址,對映的方法主要有:
    • DNS:網路中存在DNS伺服器,當用戶發起查詢時提供IP地址;
    • hosts:檔案中指定本地對映關係(localhost和本地主機名對應的IP地址,均為127.0.0.1)。

PPP協議

  • PPP協議(Point-to-Point Protocol,點到點協議)是目前應用最廣泛的資料傳輸協議之一。
  • PPP建立網路連線的步驟:
    • 使用序列調變解調器撥號;
    • 登入遠端主機(通常是運營商的接入伺服器);
    • 啟動遠端PPP協議引擎;
    • 將串列埠配置為網路介面。
  • ADSL使用的PPPoE(PPP over Ethernet)就是PPP的衍生物。

瀏覽網頁

  • cookie
    • 在使用者瀏覽網頁時,一些伺服器會在使用者機器的特定目錄(由瀏覽器指定)下儲存一些資訊用於確定使用者的身份(因此使用者在不同頁面之間切換時,不用重複輸入驗證資訊),這些資訊非常短小,因此被形象地稱為cookie;
    • cookie由瀏覽器管理,可以設定失效期限;
    • 一些惡意程式會竊取儲存在cookie中的個人資訊,因此定期清理是個好習慣。
  • RSS(聚合內容,Really Simple Syndication)提供了一種訂閱資訊的途徑:
    • RSS是線上共享內容的一種簡易方式,網站通過RSS輸出,讓使用者獲取網站內容的最新更新;
    • 實時書籤,自動顯示最近更新的文章標題。
  • Lynx:一款基於文字的瀏覽器,工作在Shell下。
    • Lynx可以工作在多個作業系統平臺上,是GNU/Linux中很流行的console瀏覽器;
    • 當圖形介面無法使用時,Lynx是個很好的選擇;
    • 訪問網站:lynx www.csdn.net直接用lynx開啟網址;
    • 查詢字串:/命令可以開啟命令列查詢網頁中的字串;
    • 退出瀏覽器:q退出;
    • 下載和儲存檔案:移動游標使連結高亮顯示,按d指示Lynx下載該連結對應檔案;

傳輸檔案

  • NFS是Linux間的網路硬碟。
    • NFS目前只用於在Linux和UNIX主機間共享檔案系統;
    • “推薦”用sudo mount -o rw可讀寫方式安裝檔案系統;
    • 如果要在啟動時自動安裝檔案系統nfs,應配置/etc/fstab檔案加上nfs項,執行sudo mount -a -t nfs使配置生效;
    • 解除安裝檔案系統前應確保沒有其他程序在使用該檔案系統;
    • 如果發現程序被佔用,用lsof命令查詢哪些程序在使用該檔案系統;
    • 如果所有辦法都不奏效,用umount -f強制解除安裝檔案系統。
  • CIFS(Common Internet File System,公共Internet檔案系統)是Windows用來”共享”檔案的協議機制。
  • Samba能夠將Windows包含到Linux網路中:
    • Samba提供了對CIFS的實現,用於Linux和Windows主機之間的檔案共享;
    • 安裝在Linux主機上的Samba伺服器端程式向Windows機器提供Linux共享,Windows主機則不需要安裝其他特殊工具。
  • nautilus命令開啟Linux下的“文字瀏覽器”。
  • FTP在Linux系統下載檔案:
    • 可以用Web瀏覽器/檔案瀏覽器檢視FTP伺服器上的檔案,只要在地址中加上”ftp://”字首告訴瀏覽器要使用FTP協議,但是還是用FTP客戶端最方便下載和上傳;
    • FileZilla是對中文編碼支援最好的FTP客戶端;
    • FileZilla在Ubuntu安裝源也提供了下載;
    • 使用者名稱必須提供主機名、使用者名稱、口令和伺服器埠(除主機名外,其他都是可選的);
    • 伺服器埠預設是21;
    • 如果“使用者名稱”和“口令”兩個文字框中留白,則以“匿名使用者”登入;
    • 如果是中文站點,將該站點使用的字元編碼填入“站點管理器”——>”字符集”——>“使用自定義的字符集”——>“編碼”框內(通常是gbk)。
    • ftp命令:是Linux自帶的一個命令列的FTP工具,基本可以完成所有基本的FTP操作;
    • 登入:ftp [host [port]];
    • 匿名連線:使用者名稱應輸入anonymous;
    • 連線伺服器:open;
    • 關閉連線但不退出伺服器:close/disconnect;
    • 刪除遠端伺服器檔案:delete <file>;
    • 遠端瀏覽檔案/換路徑:與shell命令一致;
    • 下載一個檔案:get <filename>下載檔案當前路徑;
    • 下載多個檔案:mget <file...>下載多個檔案,也可以用萬用字元指定多個檔案;
    • 上傳一個檔案/多個檔案:put <filename...>;
    • 關閉互動模式:prompt off;
    • 改變本地目錄:lcd;
    • 本地執行命令:!在命令前表示本地執行;
    • 列出所有命令/特定命令:?/? <command>;
    • 退出:quit/bye

基於SSH的檔案傳輸:sftpscp

  • sftp:基於SSH的檔案傳輸,和傳統FTP沾不上什麼關係,同樣支援多使用者登入;
    • sftp傳輸有助於保護使用者賬戶和傳輸安全;
    • sftp建立連線和上傳/下載檔案的流程:
    • 首先要確保遠端主機開啟了SSH守護程序,用命令sftp [email protected]<ipaddress>建立連線;
    • sftp的常見命令與ftp的基本命令大部分一致。
命令 說明
cd 切換遠端所在的目錄
lsdir 顯示當前目錄下的檔案列表
mkdir 建立目錄
rmdir 刪除目錄
pwd 顯示當前遠端目錄
chgrp 修改檔案(目錄)的屬組
chown 修改檔案(目錄)的屬主
chmod 修改檔案(目錄)的許可權
rm 刪除檔案/目錄
rename <oldname> <newname> 修改檔名
exitbyequit 關閉sftp客戶端程式
lcd 切換本地所在目錄
lls 顯示本地所在目錄下的檔案列表
lmkdir 當地新建目錄
lpwd 顯示當地所在的檔案目錄
put 上傳檔案
get 下載檔案

利用SSH通道複製檔案:scp

  • 使用scp前應先斷開SSH連線。
  • 從伺服器複製檔案到本地:scp [email protected]<ip_address>:<remote_file_path> <local_file_path>;
  • 從本地複製檔案到伺服器:scp <local_file_path> [email protected]<ip_address>:<remote_file_path>

遠端登入

登入另一臺Linux伺服器

SSH登入:命令列登入

  • OpenSSH:是Linux下最常用的SSH伺服器/客戶端;所有的Linux發行版都附帶此軟體(client),可以直接通過安裝源安裝;
    • 安裝OpenSSH:sudo apt install ssh;
    • 完成安裝後系統會自動啟動SSH伺服器,同時設定為隨系統啟動;
    • 如果伺服器沒有執行,手工執行帶有start引數的ssh指令碼,啟動SSH伺服器程式,sudo /etc/init.d/ssh start(守護程序)。
  • SSH(Secure SHell):
    • 支援多使用者同時登入;
    • 會對使用者身份驗證,並加密兩臺主機之間的通訊;
    • SSH商業化版本為SSH2,開源版本為OpenSSH。
  • SSH遠端登入:
    • 僅訪問命令列:ssh [email protected]_address/ssh -l username ip_address;
    • 需執行X應用程式:ssh -X啟動X轉發功能,將遠端的X應用程式介面完整傳輸到本地;
    • 需指定埠:ssh -p port;
    • 退出:exit;
    • 登入後一切操作都發生在遠端伺服器。
  • SSH金鑰登入:避免每次登入時都需要輸入口令;
    • 基本原理:
    • 產生一對互相匹配的金鑰檔案(公鑰和私鑰);
    • 管理員的PC上儲存私鑰檔案的副本;
    • 與私鑰檔案匹配的公鑰檔案存放在伺服器上;
    • 建立SSH時檢查金鑰對的匹配性。
    • 操作過程:
    • 生成金鑰對:ssh-keygen -t rsa在使用者主目錄下.ssh目錄中生成金鑰對,id_rsa是私鑰檔案,id_rsa_pub是公鑰檔案;
    • 複製公鑰至遠端主機:scp <local-ssh>/id_rsa.pub [email protected]:<remote-ssh>/authorized_keys

登入X視窗系統:圖形化的VNC

  • VNC用於圖形化的遠端登入:
    • 大部分LInux發行版都附帶這個軟體的伺服器端;
    • Ubuntu下,用命令sudo apt install vnc4-common vnc4server安裝伺服器端程式。
  • VNC(Virtual Network Computing,虛擬網路計算):如果要直接從X視窗登入伺服器,用VNC登入。
    • 伺服器端的配置:
    • vncserver:執行命令,設定命令,自動在主機使用者目錄下生成VNC配置檔案。
    • 客戶端的配置:
    • 需要下載特定的客戶端的程式如vncviewer;
    • vncviewer 127.0.0.1:1:登入命令,冒號後數字代表桌面號。

從Windows登入Linux

  • 開原始碼的PuTTY使用最為廣泛。
  • VNC也有Windows版本。

登入Windows伺服器

  • Windows上安裝VNC Server
  • 直接通過RDP協議連線Windows伺服器:
    • 要確保Windows主機已開啟“遠端登入”(允許使用者遠端連線到此計算機)功能;
    • 登入:rdesktop -u username ip-address在Linux上會顯示windows桌面視窗;
    • 修改埠:RDP協議預設埠是3389,要修改埠在IP地址+冒號:+埠號。

參考文獻

Linux從入門到精通 劉憶智 著

相關推薦

Linux系列9-網路配置遠端訪問

摘要 連網方式的介紹 ifconfig用於命令列下配置網路 route配置靜態路由 簡單計算機網路概念 ftp命令 基於SSH的檔案傳輸sftp和scp 關於Linux系統的遠端登入 如要下載筆

Linux網路配置遠端訪問

ifconfig:檢視ip資訊 網路配置:開啟虛擬機器中編輯選項,選擇虛擬網路編輯器 1.移除vmnet8網路 2.新增網路,選擇vmnet8 3.選中vmnet8,點選nat設定,在新頁面中獲取ip,閘道器資訊。 4.在centos中執行命令:vi /etc/sysconfig

docker入門實戰(理論+實踐)系列---docker網路配置資料卷管理

docker可以存在自身的網路配置和資料卷管理方式,首先docker容器作為一個獨立的執行單元,可以有獨立的IP地址、埠等資訊。同時,nginx是無狀態的,當docker重啟之後,容器會恢復到初始化映象狀態(即docker是無狀態的),資料卷的存在實現了宿主機和docker容器之間的資料共享,本篇文章以n

liunx軟體安裝與網路管理遠端訪問

三、軟體安裝1、RPM包管理器進行軟體安裝 語法:rpm【選項】【軟體包】 -i 安裝一個以前從來未安裝過的軟體包 -v 將安裝過程列印在螢幕上 -h 以字元“#”顯示安裝進度條 rpm -q【軟體包】 rpm -qa rpm -qi【軟體包】

Linux下Mongodb安裝啟動配置遠端訪問

Linux下Mongodb安裝和啟動配置(儘量不要使用root使用者) 1、下載解壓mongodb 解壓mongodb tar -xvf mongodb-linux-x86_64-amazon-3.6.0.tgz 2、安裝準備

Linux 124課程 9配置安全OpenSSH服務

數據加密 gen listen 認證 基於 for 公鑰加密 重啟 打開 SSH 基於RSA算法 遠程登錄工具RSA 非對稱加密算法:  公鑰: 對外公開  私鑰: 私有保管  用公鑰加密,私鑰才能打開;用私鑰加密,公鑰才能打開;數據加密的方法,將對方的公鑰用於加密數據

Linux配置FTP遠端訪問設定

文章目錄 檢測是否安裝vsftpd 安裝vsftpd 新建ftp共享資料夾 建立ftp使用者名稱密碼 配置檔案/etc/vsftpd.conf 啟動服務 測試ftp 檢測是否安裝vs

linux下使用yum安裝mysql、啟動、登入遠端訪問

1、安裝 檢視有沒有安裝過:           yum list installed mysql*           rpm -qa | grep mysql* 檢視有沒有安裝包:           yum list mysql* 安裝mysql客戶端:    

CentOS7.2 安裝mysql5.6,並配置自動啟動遠端訪問

   安裝之前,需要先解除安裝maiiadb資料庫(centos7自帶的mysql的另一個版本) ## 檢視本機是否安裝了mariadb資料庫 $ rpm -qa|grep mariadb            ## 上一步查出來的檔名,直接複製下來就OK $ rpm -e

linux上Elasticsearch 安裝配置、網頁訪問

elasticsearch 安裝 配置一、ElasticSearch簡述 ElasticSearch是一個基於Lucene的搜索服務器。它提供了一個分布式多用戶能力的全文搜索引擎,基於RESTful web接口。Elasticsearch是用Java開發的,並作為Apache許可條款下的開放源碼

Linux下vsftpd的配置使用

vsftpd設置通過ftp向linux主機傳輸文件十分方便,但是在使用之前也需要對主機進行相關設置。首先是對vsftpd進行配置,詳細的信息可以見這個博客:https://www.huzs.net/?p=1213#server_vsftpd.conf 但是當配置好vsftpd後,仍然無法用ftp鏈接到linu

Redis的詳細安裝及Linux環境變量配置啟動

jemalloc 展示 str 並且 網盤 pre 成功 pan 用戶組 前言:    Redis Redis是一個開源的使用ANSI C語言編寫、支持網絡、可基於內存亦可持久化的日誌型、Key-Value數據庫,並提供多種語言的API。 我使用的是下面這個版本:

第二天linux,yum源配置ftp部分設置

img linu ESS roc linux ble yum的配置 ftpd inux yum的配置文件yum repolistyum listyum install vsftpd -ysystemctl start vsftpdsystemctl enable vsftp

linux虛擬機器網路配置

本文網路配置以CentOS-6.9系統為例  1.輸入命令vim  /etc/sysconfig/network-scripts/ifcfg-eth0 開啟配置檔案,沒有vim的可用vi或者nano 2.將ONBOOT=no改成yes,NM_CONTROLLED=yes改為no 3.

Linux 關於安裝rabbitmq以及開啟遠端訪問許可權步驟

時光飛逝,距離上次寫部落格居然已經兩個月之久,近期因為專案進度緊,而一直沒有抽出時間來進行總結,本人會在近期將專案中所涉及到的技術以及一些操作進行總結並更新到部落格中,今天我們就來聊聊linux下安裝rabbitmq的安裝步驟。 本篇部落格主要以安裝步驟為主,所以並不會涉及到太

linux系統關於網路配置的修改

子網掩碼的作用是限制網路範圍 例如255.255.255.0,前三位是網路位,前一個是網路位是a類地址,前二是b類,前三是c類 1.網路設定工具 ifconfig #檢視或設定網路介面 ifconfig eth0 ip #設定網路ip為設定服務端為172.25.254.228,

系統日誌管理,時間同步服務,linux下的網路配置

####系統的日誌管理#### #2.rsyslog的管理# /var/log/messages ##服務資訊登陸 /var/log/secure ##系統登陸日誌 /var/log/cron ##定時任務日誌 /var/log/maillog ##郵件日誌 /var/log/boot.lo

SSH 免密登入配置遠端登入伺服器

生成SSH私鑰和公鑰 ssh-keygen -t rsa 手動建立一個 authorized_keys檔案 touch ~/.ssh/authorized_keys 公鑰檔案內容複製到authorized_keys檔案裡面 cat ~/.ssh/id_rsa.pub

樹莓派系統安裝遠端訪問

1.安裝樹莓派系統  1.格式化SD卡           先用SDFormatter格式化SD卡,Drive是SD卡名,Size容量大小,直接點格式化快速格式化即可。 2. 燒錄系統  登入樹莓派官網(ht

Linux下的網路配置--ip 閘道器 dns

Linux下的網路配置 ip的基礎知識 1、什麼是IP ADDRESS internet protocol address          ##網路協議地址 ipv4  &