<menu id="guoca"></menu>
<nav id="guoca"></nav><xmp id="guoca">
  • <xmp id="guoca">
  • <nav id="guoca"><code id="guoca"></code></nav>
  • <nav id="guoca"><code id="guoca"></code></nav>

    Linux常用命令知識總結(一)

    VSole2022-07-29 06:39:52

    Linux比較麻煩的就是很多東西都要用命令來控制,當然,這也是很多人喜歡它的原因,比較短小但卻功能強大。筆者現將相關文章加以整合互補,逐漸總結以便后續學習查看.

    基本操作

    Linux 關機,重啟
    # 關機
    shutdown -h now
    
    # 重啟
    shutdown -r now
    
    查看系統,CPU信息
    # 查看系統內核信息
    uname -a
    
    # 查看系統內核版本
    cat /proc/version
    
    # 查看當前用戶環境變量
    env
    
    cat /proc/cpuinfo
    
    # 查看有幾個邏輯cpu, 包括cpu型號
    cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c
    
    # 查看有幾顆cpu,每顆分別是幾核
    cat /proc/cpuinfo | grep physical | uniq -c
    
    # 查看當前CPU運行在32bit還是64bit模式下, 如果是運行在32bit下也不代表CPU不支持64bit
    getconf LONG_BIT
    
    # 結果大于0, 說明支持64bit計算. lm指long mode, 支持lm則是64bit
    cat /proc/cpuinfo | grep flags | grep ' lm ' | wc -l
    
    建立軟連接
    ln -s /usr/local/jdk1.8/ jdk
    
    rpm相關
    # 查看是否通過rpm安裝了該軟件
    rpm -qa | grep 軟件名
    
    sshkey
    # 創建sshkey
    ssh-keygen -t rsa -C your_email@example.com
    
    #id_rsa.pub 的內容拷貝到要控制的服務器的 home/username/.ssh/authorized_keys 中,如果沒有則新建(.ssh權限為700, authorized_keys權限為600)
    
    命令重命名
    # 在各個用戶的.bash_profile中添加重命名配置
    alias ll='ls -alF'
    
    同步服務器時間
    sudo ntpdate -u ntp.api.bz
    
    后臺運行命令
    # 后臺運行,并且有nohup.out輸出
    nohup xxx &
    
    # 后臺運行, 不輸出任何日志
    nohup xxx > /dev/null &
    
    # 后臺運行, 并將錯誤信息做標準輸出到日志中 
    nohup xxx >out.log 2>&1 &
    
    強制活動用戶退出
    # 命令來完成強制活動用戶退出.其中TTY表示終端名稱
    pkill -kill -t [TTY]
    
    查看命令路徑
    which <命令>
    
    查看進程所有打開最大fd數
    ulimit -n
    
    配置dns
    vim /etc/resolv.conf
    
    nslookup,查看域名路由表
    nslookup google.com
    
    last, 最近登錄信息列表
    # 最近登錄的5個賬號
    last -n 5
    
    設置固定ip
    ifconfig em1  192.168.5.177 netmask 255.255.255.0
    
    查看進程內加載的環境變量
    # 也可以去 cd /proc 目錄下, 查看進程內存中加載的東西
    ps eww -p  XXXXX(進程號)
    
    查看進程樹找到服務器進程
    ps auwxf
    
    查看進程啟動路徑
    cd /proc/xxx(進程號)
    ls -all
    # cwd對應的是啟動路徑
    
    添加用戶, 配置sudo權限
    # 新增用戶
    useradd 用戶名
    passwd 用戶名
    
    #增加sudo權限
    vim /etc/sudoers
    # 修改文件里面的
    # root    ALL=(ALL)       ALL
    # 用戶名 ALL=(ALL)       ALL
    
    強制關閉進程名包含xxx的所有進程
    ps aux|grep xxx | grep -v grep | awk '{print $2}' | xargs kill -9
    

    磁盤,文件,目錄相關操作

    vim操作
    #normal模式下 g表示全局, x表示查找的內容, y表示替換后的內容
    :%s/x/y/g
    
    #normal模式下
    0  # 光標移到行首(數字0)
    $  # 光標移至行尾
    shift + g # 跳到文件最后
    gg # 跳到文件頭
    
    # 顯示行號
    :set nu
    
    # 去除行號
    :set nonu
    
    # 檢索
    /xxx(檢索內容)  # 從頭檢索, 按n查找下一個
    ?xxx(檢索內容)  # 從尾部檢索
    
    打開只讀文件,修改后需要保存時(不用切換用戶即可保存的方式)
    # 在normal模式下
    :w !sudo tee %
    
    查看磁盤, 文件目錄基本信息
    # 查看磁盤掛載情況
    mount
    
    # 查看磁盤分區信息
    df
    
    # 查看目錄及子目錄大小
    du -H -h
    
    # 查看當前目錄下各個文件, 文件夾占了多少空間, 不會遞歸
    du -sh *
    
    wc命令
    # 查看文件里有多少行
    wc -l filename
    
    # 看文件里有多少個word
    wc -w filename
    
    # 文件里最長的那一行是多少個字
    wc -L filename
    
    # 統計字節數
    wc -c
    

    常用壓縮, 解壓縮命令

    壓縮命令
    tar czvf xxx.tar 壓縮目錄
    
    zip -r xxx.zip 壓縮目錄
    
    解壓縮命令
    tar zxvf xxx.tar
    
    # 解壓到指定文件夾
    tar zxvf xxx.tar -C /xxx/yyy/
    
    unzip xxx.zip
    

    變更文件所屬用戶, 用戶組

    chown eagleye.eagleye xxx.log
    

    cp, scp, mkdir

    #復制
    cp xxx.log
    
    # 復制并強制覆蓋同名文件
    cp -f xxx.log
    
    # 復制文件夾
    cp -r xxx(源文件夾) yyy(目標文件夾)
    
    # 遠程復制
    scp -P ssh端口 username@10.10.10.101:/home/username/xxx /home/xxx
    
    # 級聯創建目錄
    mkdir -p /xxx/yyy/zzz
    
    # 批量創建文件夾, 會在test,main下都創建java, resources文件夾
    mkdir -p src/{test,main}/{java,resources}
    
    比較兩個文件
    diff -u 1.txt 2.txt
    
    日志輸出的字節數,可以用作性能測試
    # 如果做性能測試, 可以每執行一次, 往日志里面輸出 “.” , 這樣日志中的字節數就是實際的性能測試運行的次數, 還可以看見實時速率.
    tail -f xxx.log | pv -bt
    
    查看, 去除特殊字符
    # 查看特殊字符
    cat -v xxx.sh
    
    # 去除特殊字符
    sed -i 's/^M//g’ env.sh  去除文件的特殊字符, 比如^M:  需要這樣輸入: ctrl+v+enter
    
    處理因系統原因引起的文件中特殊字符的問題
    # 可以轉換為該系統下的文件格式
    cat file.sh > file.sh_bak
    
    # 先將file.sh中文件內容復制下來然后運行, 然后粘貼內容, 最后ctrl + d 保存退出
    cat > file1.sh
    
    # 在vim中通過如下設置文件編碼和文件格式
    :set fileencodings=utf-8 ,然后 w (存盤)一下即可轉化為 utf8 格式,
    :set fileformat=unix
    
    # 在mac下使用dos2unix進行文件格式化
    find . -name "*.sh" | xargs dos2unix
    
    tee, 重定向的同時輸出到屏幕
    awk ‘{print $0}’ xxx.log | tee test.log
    

    檢索相關

    grep
    # 反向匹配, 查找不包含xxx的內容
    grep -v xxx
    
    # 排除所有空行
    grep -v '^/pre>
    
    # 返回結果 2,則說明第二行是空行
    grep -n “^$” 111.txt    
    
    # 查詢以abc開頭的行
    grep -n “^abc” 111.txt 
    
    # 同時列出該詞語出現在文章的第幾行
    grep 'xxx' -n xxx.log
    
    # 計算一下該字串出現的次數
    grep 'xxx' -c xxx.log
    
    # 比對的時候,不計較大小寫的不同
    grep 'xxx' -i xxx.log
    
    awk
    # 以':' 為分隔符,如果第五域有user則輸出該行
    awk -F ':' '{if ($5 ~ /user/) print $0}' /etc/passwd 
    
    # 統計單個文件中某個字符(串)(中文無效)出現的次數
    awk -v RS='character' 'END {print --NR}' xxx.txt
    
    find檢索命令
    # 在目錄下找后綴是.mysql的文件
    find /home/eagleye -name '*.mysql' -print
    
    # 會從 /usr 目錄開始往下找,找最近3天之內存取過的文件。
    find /usr -atime 3 –print
    
    # 會從 /usr 目錄開始往下找,找最近5天之內修改過的文件。
    find /usr -ctime 5 –print
    
    # 會從 /doc 目錄開始往下找,找jacky 的、文件名開頭是 j的文件。  
    find /doc -user jacky -name 'j*' –print
    
    # 會從 /doc 目錄開始往下找,找尋文件名是 ja 開頭或者 ma開頭的文件。
    find /doc \( -name 'ja*' -o- -name 'ma*' \) –print
    
    #  會從 /doc 目錄開始往下找,找到凡是文件名結尾為 bak的文件,把它刪除掉。-exec 選項是執行的意思,rm 是刪除命令,{ } 表示文件名,“\;”是規定的命令結尾。 
    find /doc -name '*bak' -exec rm {} \;
    

    網絡相關

    查看什么進程使用了該端口
    lsof -i:por
    
    獲取本機ip地址
    /sbin/ifconfig -a|grep inet|grep -v 127.0.0.1|grep -v inet6|awk '{print $2}'|tr -d "addr:"
    
    iptables
    # 查看iptables狀態
    service iptables status
    
    # 要封停一個ip
    iptables -I INPUT -s ***.***.***.*** -j DROP
    
    # 要解封一個IP,使用下面這條命令:
    iptables -D INPUT -s ***.***.***.*** -j DROP
    
    備注: 參數-I是表示Insert(添加),-D表示Delete(刪除)。后面跟的是規則,INPUT表示入站,***.***.***.***表示要封停的IP,DROP表示放棄連接。
    
    #開啟9090端口的訪問
    /sbin/iptables -I INPUT -p tcp --dport 9090 -j ACCEPT 
    
    # 防火墻開啟、關閉、重啟
    /etc/init.d/iptables status
    /etc/init.d/iptables start
    /etc/init.d/iptables stop
    /etc/init.d/iptables restart
    
    nc命令, tcp調試利器
    #給某一個endpoint發送TCP請求,就將data的內容發送到對端
    nc 192.168.0.11 8000 < data.txt
    
    #nc可以當做服務器,監聽某個端口號,把某一次請求的內容存儲到received_data里
    nc -l 8000 > received_data
    
    #上邊只監聽一次,如果多次可以加上-k參數
    nc -lk 8000
    
    tcpdump
    # dump出本機12301端口的tcp包
    tcpdump -i em1 tcp port 12301 -s 1500 -w abc.pcap
    
    跟蹤網絡路由路徑
    # traceroute默認使用udp方式, 如果是-I則改成icmp方式
    traceroute -I www.163.com
    
    # 從ttl第3跳跟蹤
    traceroute -M 3 www.163.com  
    
    # 加上端口跟蹤
    traceroute -p 8080 192.168.10.11ss
    # 顯示本地打開的所有端口
    ss -l 
    
    # 顯示每個進程具體打開的socket
    ss -pl 
    
    # 顯示所有tcp socket
    ss -t -a 
    
    # 顯示所有的UDP Socekt
    ss -u -a 
    
    # 顯示所有已建立的SMTP連接
    ss -o state established '( dport = :smtp or sport = :smtp )'  
    
    # 顯示所有已建立的HTTP連接 
    ss -o state established '( dport = :http or sport = :http )'  
    
    #找出所有連接X服務器的進程
    ss -x src /tmp/.X11-unix/*  
    
    #列出當前socket統計信息
    ss -s 
    
    解釋:netstat是遍歷/proc下面每個PID目錄,ss直接讀/proc/net下面的統計信息。所以ss執行的時候消耗資源以及消耗的時間都比netstat少很多
    
    netstat
    # 輸出每個ip的連接數,以及總的各個狀態的連接數
    netstat -n | awk '/^tcp/ {n=split($(NF-1),array,":");if(n<=2)++S[array[(1)]];else++S[array[(4)]];++s[$NF];++N} END {for(a in S){printf("%-20s %s", a, S[a]);++I}printf("%-20s %s","TOTAL_IP",I);for(a in s) printf("%-20s %s",a, s[a]);printf("%-20s %s","TOTAL_LINK",N);}'
    
    # 統計所有連接狀態, 
    # CLOSED:無連接是活動的或正在進行
    # LISTEN:服務器在等待進入呼叫
    # SYN_RECV:一個連接請求已經到達,等待確認
    # SYN_SENT:應用已經開始,打開一個連接
    # ESTABLISHED:正常數據傳輸狀態
    # FIN_WAIT1:應用說它已經完成
    # FIN_WAIT2:另一邊已同意釋放
    # ITMED_WAIT:等待所有分組死掉
    # CLOSING:兩邊同時嘗試關閉
    # TIME_WAIT:主動關閉連接一端還沒有等到另一端反饋期間的狀態
    # LAST_ACK:等待所有分組死掉
    netstat -n | awk '/^tcp/ {++state[$NF]} END {for(key in state) print key,"\t",state[key]}'
    
    # 查找較多time_wait連接
    netstat -n|grep TIME_WAIT|awk '{print $5}'|sort|uniq -c|sort -rn|head -n20
    

    監控linux性能命令

    top

    按大寫的 F 或 O 鍵,然后按 a-z 可以將進程按照相應的列進行排序, 然后回車。而大寫的 R 鍵可以將當前的排序倒轉。

    PID 進程id
    PPID 父進程id
    RUSER Real user name
    UID 進程所有者的用戶id
    USER 進程所有者的用戶名
    GROUP 進程所有者的組名
    TTY 啟動進程的終端名。不是從終端啟動的進程則顯示為 ?
    PR 優先級
    NI nice值。負值表示高優先級,正值表示低優先級
    P 最后使用的CPU,僅在多CPU環境下有意義
    %CPU 上次更新到現在的CPU時間占用百分比
    TIME 進程使用的CPU時間總計,單位秒
    TIME+ 進程使用的CPU時間總計,單位1/100秒
    %MEM 進程使用的物理內存百分比
    VIRT 進程使用的虛擬內存總量,單位kb。VIRT=SWAP+RES
    SWAP 進程使用的虛擬內存中,被換出的大小,單位kb。
    RES 進程使用的、未被換出的物理內存大小,單位kb。RES=CODE+DATA
    CODE 可執行代碼占用的物理內存大小,單位kb
    DATA 可執行代碼以外的部分(數據段+棧)占用的物理內存大小,單位kb
    SHR 共享內存大小,單位kb
    nFLT 頁面錯誤次數
    nDRT 最后一次寫入到現在,被修改過的頁面數。
    S 進程狀態。D=不可中斷的睡眠狀態,R=運行,S=睡眠,T=跟蹤/停止,Z=僵尸進程
    COMMAND 命令名/命令行
    WCHAN 若該進程在睡眠,則顯示睡眠中的系統函數名
    Flags 任務標志,參考 sched.h
    
    dmesg,查看系統日志
    dmesg
    
    iostat,磁盤IO情況監控
    iostat -xz 1
    
    # r/s, w/s, rkB/s, wkB/s:分別表示每秒讀寫次數和每秒讀寫數據量(千字節)。讀寫量過大,可能會引起性能問題。
    # await:IO操作的平均等待時間,單位是毫秒。這是應用程序在和磁盤交互時,需要消耗的時間,包括IO等待和實際操作的耗時。如果這個數值過大,可能是硬件設備遇到了瓶頸或者出現故障。
    # avgqu-sz:向設備發出的請求平均數量。如果這個數值大于1,可能是硬件設備已經飽和(部分前端硬件設備支持并行寫入)。
    # %util:設備利用率。這個數值表示設備的繁忙程度,經驗值是如果超過60,可能會影響IO性能(可以參照IO操作平均等待時間)。如果到達100%,說明硬件設備已經飽和。
    # 如果顯示的是邏輯設備的數據,那么設備利用率不代表后端實際的硬件設備已經飽和。值得注意的是,即使IO性能不理想,也不一定意味這應用程序性能會不好,可以利用諸如預讀取、寫緩存等策略提升應用性能。
    

    free,內存使用情況

    free -m
    
    eg:
    
         total       used       free     shared    buffers     cached
    Mem:          1002        769        232          0         62        421
    -/+ buffers/cache:          286        715
    Swap:          1153          0       1153
    

    第一部分Mem行:

    total 內存總數: 1002M
    used 已經使用的內存數: 769M
    free 空閑的內存數: 232M
    shared 當前已經廢棄不用,總是0
    buffers Buffer 緩存內存數: 62M
    cached Page 緩存內存數:421M
    

    關系:total(1002M) = used(769M) + free(232M)

    第二部分(-/+ buffers/cache):

    (-buffers/cache) used內存數:286M (指的第一部分Mem行中的used – buffers – cached)
    (+buffers/cache) free內存數: 715M (指的第一部分Mem行中的free + buffers + cached)
    

    可見-buffers/cache反映的是被程序實實在在吃掉的內存,而+buffers/cache反映的是可以挪用的內存總數.

    第三部分是指交換分區

    sar,查看網絡吞吐狀態
    # sar命令在這里可以查看網絡設備的吞吐率。在排查性能問題時,可以通過網絡設備的吞吐量,判斷網絡設備是否已經飽和。
    
    sar -n DEV 1
    
    #
    # sar命令在這里用于查看TCP連接狀態,其中包括:
    # active/s:每秒本地發起的TCP連接數,既通過connect調用創建的TCP連接;
    # passive/s:每秒遠程發起的TCP連接數,即通過accept調用創建的TCP連接;
    # retrans/s:每秒TCP重傳數量;
    # TCP連接數可以用來判斷性能問題是否由于建立了過多的連接,進一步可以判斷是主動發起的連接,還是被動接受的連接。TCP重傳可能是因為網絡環境惡劣,或者服務器壓力過大導致丟包
    sar -n TCP,ETCP 1
    
    vmstat, 給定時間監控CPU使用率, 內存使用, 虛擬內存交互, IO讀寫
    # 2表示每2秒采集一次狀態信息, 1表示只采集一次(忽略既是一直采集)
    
    vmstat 2 1
    
    eg:
    r b swpd free buff cache si so bi bo in cs us sy id wa
    1 0 0 3499840 315836 3819660 0 0 0 1 2 0 0 0 100 0
    0 0 0 3499584 315836 3819660 0 0 0 0 88 158 0 0 100 0
    0 0 0 3499708 315836 3819660 0 0 0 2 86 162 0 0 100 0
    0 0 0 3499708 315836 3819660 0 0 0 10 81 151 0 0 100 0
    1 0 0 3499732 315836 3819660 0 0 0 2 83 154 0 0 100 0
    
    • r 表示運行隊列(就是說多少個進程真的分配到CPU),我測試的服務器目前CPU比較空閑,沒什么程序在跑,當這個值超過了CPU數目,就會出現CPU瓶頸了。這個也和top的負載有關系,一般負載超過了3就比較高,超過了5就高,超過了10就不正常了,服務器的狀態很危險。top的負載類似每秒的運行隊列。如果運行隊列過大,表示你的CPU很繁忙,一般會造成CPU使用率很高。
    • b 表示阻塞的進程,這個不多說,進程阻塞,大家懂的。
    • swpd 虛擬內存已使用的大小,如果大于0,表示你的機器物理內存不足了,如果不是程序內存泄露的原因,那么你該升級內存了或者把耗內存的任務遷移到其他機器。
    • free 空閑的物理內存的大小,我的機器內存總共8G,剩余3415M。
    • buff Linux/Unix系統是用來存儲,目錄里面有什么內容,權限等的緩存,我本機大概占用300多M
    • cache cache直接用來記憶我們打開的文件,給文件做緩沖,我本機大概占用300多M(這里是Linux/Unix的聰明之處,把空閑的物理內存的一部分拿來做文件和目錄的緩存,是為了提高 程序執行的性能,當程序使用內存時,buffer/cached會很快地被使用。)
    • si 每秒從磁盤讀入虛擬內存的大小,如果這個值大于0,表示物理內存不夠用或者內存泄露了,要查找耗內存進程解決掉。我的機器內存充裕,一切正常。
    • so 每秒虛擬內存寫入磁盤的大小,如果這個值大于0,同上。
    • bi 塊設備每秒接收的塊數量,這里的塊設備是指系統上所有的磁盤和其他塊設備,默認塊大小是1024byte,我本機上沒什么IO操作,所以一直是0,但是我曾在處理拷貝大量數據(2-3T)的機器上看過可以達到140000/s,磁盤寫入速度差不多140M每秒
    • bo 塊設備每秒發送的塊數量,例如我們讀取文件,bo就要大于0。bi和bo一般都要接近0,不然就是IO過于頻繁,需要調整。
    • in 每秒CPU的中斷次數,包括時間中斷
    • cs 每秒上下文切換次數,例如我們調用系統函數,就要進行上下文切換,線程的切換,也要進程上下文切換,這個值要越小越好,太大了,要考慮調低線程或者進程的數目,例如在apache和nginx這種web服務器中,我們一般做性能測試時會進行幾千并發甚至幾萬并發的測試,選擇web服務器的進程可以由進程或者線程的峰值一直下調,壓測,直到cs到一個比較小的值,這個進程和線程數就是比較合適的值了。系統調用也是,每次調用系統函數,我們的代碼就會進入內核空間,導致上下文切換,這個是很耗資源,也要盡量避免頻繁調用系統函數。上下文切換次數過多表示你的CPU大部分浪費在上下文切換,導致CPU干正經事的時間少了,CPU沒有充分利用,是不可取的。
    • us 用戶CPU時間,我曾經在一個做加密解密很頻繁的服務器上,可以看到us接近100,r運行隊列達到80(機器在做壓力測試,性能表現不佳)。
    • sy 系統CPU時間,如果太高,表示系統調用時間長,例如是IO操作頻繁。
    • id 空閑 CPU時間,一般來說,id + us + sy = 100,一般我認為id是空閑CPU使用率,us是用戶CPU使用率,sy是系統CPU使用率。
    • wt 等待IO CPU時間。來源siye1982.github.io
    linux服務器linux系統
    本作品采用《CC 協議》,轉載必須注明作者和本文鏈接
    "請用root用戶執行此腳本!#最近啟動時間?#運行時間(天)?#相同ID的用戶?#密碼過期(天)?#允許root遠程登錄?#僵尸進程數量?#自啟動服務數量?"系統巡檢腳本:Version $VERSION"
    Linux的應用越來越普遍,且絕大多數嵌入式系統都使用的是Linux系統。但近期,黑客對Linux服務器進行DDoS攻擊的次數飆升,受DDoS攻擊影響的有70多個國家,其中77%的攻擊都發生在中國,最容易受攻擊的國家還有法國和荷蘭。黑客主要是利用C&C 服務器來集中管理并執行DDoS攻擊,Linux服務器便成了其主要的攻擊目標。面對如此猖獗的黑客攻擊,Linux服務器如何做好預防工作呢?部署
    假如你想要搭建一個Linux服務器,并且希望可以長期維護的話,就需要考慮安全性能與速度等眾多因素。一份正確的linux基本安全配置手冊就顯得格外重要。#為刪除你系統上的用戶,用下面的命令:[root@c1gstudio]# userdel username#批量刪除方式#這里刪除"adm lp sync shutdown halt mail news uucp operator games gopher ftp "賬號#如果你開著ftp等服務可以把ftp賬號保留下來。for i in adm lp sync shutdown halt mail news uucp operator games gopher ftp ;do userdel $i ;done
    #更改SSH端口,最好改為10000以上,別人掃描到端口的機率也會下降。防火墻要開放配置好的端口號,如果是阿里云服務器,你還需要去阿里云后臺配置開發相應的端口才可以,否則登不上哦!如果你覺得麻煩,可以不用改。#禁用版本1協議, 因為其設計缺陷, 很容易使密碼被黑掉。關鍵在于環境變量的不同,su -的環境變量更全面。#禁止空密碼登陸。保存,用 uusama 賬戶登錄后,直接獲取的就是 root 帳號的權限。
    Linux是一種開源操作系統,它支持各種硬件平臺,Linux服務器全球知名,它和Windows之間最主要的差異在于,Linux服務器默認情況下一般不提供GUI(圖形用戶界面),而是命令行界面,它的主要目的是高效處理非交互式進程,響應時間并不是那么重要,相反,能夠長時間處理高負載才是最關鍵的。
    當企業發生網絡安全事件時,急需第一時間進行處理,使企業的網絡信息系統在最短時間內恢復正常工作,同時還需進一步查找入侵來源,還原入侵事故過程,給出解決方案與防范措施,為企業挽回或減少經濟損失。 常見的網絡安全事件:
    SSH 是一種廣泛使用的協議,用于安全地訪問 Linux 服務器。但是,不安全的默認配置也會帶來各種安全風險。具有開放 SSH 訪問權限的服務器的 root 帳戶可能存在風險。因此,有必要了解 SSH 安全性。這是在 Linux 上保護 SSH 服務器連接的方法。關閉 root 用戶的服務器訪問是一種防御策略,可以防止攻擊者實現入侵系統的目標。例如,您可以創建一個名為exampleroot的用戶,如下所示:useradd?
    如果你的Linux服務器突然負載暴增,告警短信快發爆你的手機,如何在最短時間內找出Linux性能問題所在?來看Netflix性能工程團隊的這篇博文,看它們通過十條命令在一分鐘內對機器性能問題進行診斷。概述 通過執行以下命令,可以在1分鐘內對系統資源使用情況有個大致的了解。
    VSole
    網絡安全專家
      亚洲 欧美 自拍 唯美 另类