操屁眼的视频在线免费看,日本在线综合一区二区,久久在线观看免费视频,欧美日韩精品久久综

新聞資訊


    ecure Shell (SSH) 是用于客戶端和服務端之間安全連接的網絡協議。服務端和客戶端之間的每次交互均被加密。

    本教程講解了如何在 Ubuntu 系統上啟用 SSH。

    啟用SSH服務將允許您遠程連接到系統執行并管理任務。您還可以通過scp和sftp命令來傳輸拷貝文件。

    在Ubuntu上啟用SSH

    默認情況下,當你安裝完Ubuntu系統后,系統是不允許通過SSH進行遠程訪問的,您需要安裝OpenSSH并啟用它。

    安裝方法很簡單,你需要以root或者具備sudo權限的帳號按以下步驟安裝并啟用SSH。

    1. 打開終端安裝openssh-server軟件包:sudo apt updatesudo apt install openssh-server出現提示時,輸入密碼,然后按Enter繼續安裝。
    2. 安裝完成后,SSH服務默認自動啟動,你可以通過以下命令校驗服務運行狀態:sudo systemctl status ssh命令執行后,輸出內容類似如下:● ssh.service - OpenBSD Secure Shell server
      Loaded: loaded (/lib/systemd/system/ssh.service; enabled; vendor preset: enabled)
      Active: active (running) since Mon 2020-06-09 12:34:00 CEST; 9h ago
      ...按q退出返回命令行提示符。
    3. Ubuntu 默認使用 ufw 防火墻配置工具,如果你啟用了防火墻,請確保防火墻打開了 SSH 端口,命令如下:sudo ufw allow ssh

    至此,你可以通過SSH遠程連接到你的Ubuntu系統了。Linux 和 macOS 系統默認安裝了 SSH 客戶端。 要從Windows計算機連接,請使用SSH客戶端,例如PuTTY。

    連接SSH Server

    通過網絡連接到 Ubuntu 計算機,請使用以下格式調用 ssh 命令,然后輸入用戶名和IP地址:

    ssh username@ip_address

    如果您不知道Ubuntu系統IP地址,則可在系統上使用ip命令獲取IP地址:

    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:0b:5c:e1 brd ff:ff:ff:ff:ff:ff
        inet 192.168.1.104/24 brd 192.168.1.255 scope global dynamic noprefixroute enp0s3
           valid_lft 7119sec preferred_lft 7119sec
        inet6 2409:8944:3bf:5b10:4dbf:5b85:11c9:6335/64 scope global temporary dynamic
           valid_lft 588222sec preferred_lft 69692sec
        inet6 2409:8944:3bf:5b10:a00:27ff:fe0b:5ce1/64 scope global mngtmpaddr noprefixroute
           valid_lft forever preferred_lft forever
        inet6 fe80::a00:27ff:fe0b:5ce1/64 scope link noprefixroute
           valid_lft forever preferred_lft forever

    輸出內容中你可以看到IP地址是: 192.168.1.104.

    Once you’ve found the IP address, log in to remote machine by running the following sshcommand:

    根據獲取的IP地址,你可以通過以下命令方式進行遠程ssh登錄:

    ssh linux265@192.168.1.104

    首次連接時,你會看到類似如下的信息:

    The authenticity of host '192.168.1.104 (192.168.1.104)' can't be established.
    ECDSA key fingerprint is SHA256:AqAuoVjwoRuoiFCZ6tdDmIZBvixrHZn4ykzHkB+wVb8.
    Are you sure you want to continue connecting (yes/no/[fingerprint])?

    輸入yes后,系統提示輸入密碼。

    Warning: Permanently added '192.168.1.104' (ECDSA) to the list of known hosts.
    linux265@192.168.1.104's password:

    輸入密碼登錄成功后,你將看到 Ubuntu 默認歡迎信息:

    Welcome to Ubuntu 20.04 LTS (GNU/Linux 5.4.0-26-generic x86_64)
    
     * Documentation:  https://help.ubuntu.com
     * Management:     https://landscape.canonical.com
     * Support:        https://ubuntu.com/advantage
    ...

    現在,你已經成功 ssh 登錄到了你的Ubuntu系統上。

    在Ubuntu上禁用SSH

    要在您的Ubuntu系統上禁用SSH服務器,只需運行以下命令即可停止SSH服務:

    sudo systemctl disable --now ssh

    稍后,如果要重新啟用它,請輸入:

    sudo systemctl enable --now ssh

    寫在最后

    如何在Ubuntu 20.04上安裝并啟用SSH已經講解完,現在你可以嘗試在你服務器上安裝并啟用SSH了。

    如果你的服務器在公網,建議修改默認的SSH端口,可以降低自動攻擊的風險,從而增加系統安全性。

    如果要活的更多關于如何配置SSH server的信息,可以查看SSH/OpenSSH/Configuring配置指導和OpenSSH官網手冊。

    、什么是Openssh

    OpenSSH 是 SSH (Secure SHell) 協議的免費開源實現。SSH協議族可以用來進行遠程控制, 或在計算機之間傳送文件。而實現此功能的傳統方式,如telnet(終端仿真協議)、 rcp ftp、 rlogin、rsh都是極為不安全的,并且會使用明文傳送密碼。OpenSSH提供了服務端后臺程序和客戶端工具,用來加密遠程控件和文件傳輸過程中的數據,并由此來代替原來的類似服務。

    知識延伸:
        ssh協議有兩個版本:
            v1:基于CRC-32 做MAC,不安全; (一般用于實現主機認證)
            v2:基于協議協商選擇雙方都支持的最安全的MAC機制
                基于DH做密鑰交換,基于RSA或DSA實現身份認證,從而實現無需輸入賬號面膜
                客戶端通過檢查服務器端的主機秘鑰來判斷是否能夠繼續通信;
        認證方式:
            1、基于口令的認證
            2、基于密鑰的認證


    二、為什么要使用OpenSSH

    由于傳統的telnet、rcp ftp等工具是明文傳輸數據的,對數據安全性存在很大的安全隱患,而OpenSSH可以對傳輸的數據進行加密從而大大提高了數據的安全性。


    三、OpenSSH程序簡介

    1、OpenSSH的分為客戶端和服務端兩部分

    Clients端的配置文件:/etc/ssh/ssh_config
    Server端的配置文件:/etc/ssh/sshd_config
    Server端服務腳本:/etc/rc.d/init.d/sshd
    OpenSSH在Linux系統中默認是安裝并啟動的

    openssh 主要的關鍵包有四個
    openssh.x86_64                       5.3p1-104.el6   //服務端和客戶端的公共組件        
    openssh-askpass.x86_64               5.3p1-104.el6   //     
    openssh-clients.x86_64               5.3p1-104.el6   //客戶端安裝包    
    openssh-server.x86_64                5.3p1-104.el6   //服務端安裝包


    openssl-clients 幾個常用文件

    [root@1inux ssh]# rpm -ql openssh-clients
    /etc/ssh/ssh_config  //客戶端配置文件
    /usr/bin/scp    //遠程復制文件
    /usr/bin/sftp    //遠程文件共享
    /usr/bin/slogin
    /usr/bin/ssh
    /usr/bin/ssh-add
    /usr/bin/ssh-agent
    /usr/bin/ssh-copy-id
    /usr/bin/ssh-keyscan


    openssl-server 幾個常用文件

    /etc/rc.d/init.d/sshd
    /etc/ssh/sshd_config
    /etc/sysconfig/sshd


    2、服務器端配置文件/etc/ssh/sshd_config 主要參數詳解

    服務端配置文件是讓別人登陸時使用的
    注:配置文件中使用“#”注釋掉的一般就是使用默認
        #Port 22    //默認端口號,為了其安全一般要更改為其他端口
        #AddressFamily any    //說明要監聽任意地址
        #ListenAddress 0.0.0.0 //監聽本機所有IPV4的ip
        #ListenAddress ::        //監聽本機所有的IPV6的地址
         Protocol 2   監聽的協議版本
        # HostKey for protocol version 1   //說明key的協議版本
        SyslogFacility AUTHPRIV        //使用AUTHPRIV 記錄日志  
        #LogLevel INFO    //log日志級別
                    
                    
        #Authentication:            //認證相關
        #LoginGraceTime 2m    //登陸寬限時長  默認2分鐘不登錄自動關閉
        #PermitRootLogin yes    //是否支持管理員直接登陸
        #StrictModes yes    //是否使用嚴格模式 (嚴格檢查用戶的某些相關信息)
        #MaxAuthTries 6        //最大嘗試次數  (6次以后終端斷開)
        #MaxSessions 10        //最大并發允許鏈接數 (超過 將拒絕)
        #RSAAuthentication yes    //是否支持RSA密鑰認證
        #PubkeyAuthentication yes    //是否支持公鑰認證
        #AuthorizedKeysFile     .ssh/authorized_keys  //默認保存口令的文件
        #PermitEmptyPasswords no        //是否支持空密碼登陸
        PasswordAuthentication yes
                    
        UsePAM yes //是否使用PAM 認證( 是一種統一認證框架)
        X11Forwarding yes     //是否轉發圖形界面請求 (可以打開遠程服務器圖形界面)
        Subsystem       sftp    /usr/libexec/openssh/sftp-server  
        #UseDNS yes        //是否允許DNS反解  比較浪費時間一般更改為no
                        /etc/ssh/ssh_known_hosts  //保存已經認可主機的文件


    3、客戶端配置文件/etc/ssh/ssh_config 主要參數詳解

    客戶端配置文件時登陸別人的ssh使用的
        #Host *        //表示連接所有主機
        #Port 22        //默認連接端口
        #Cipher 3des        //加密時使用的加密機制
        #StrictHostKeyChecking ask    //嚴格的主機秘鑰檢查 即第一次連接時是否詢問


    四、客戶端ssh的使用

    1、ssh的基本語法
    ssh [OPTIONS] [user]@server [COMMAND]

    -l user: 以指定用戶身份連接至服務器;默認使用本地用戶為遠程登錄時的用戶;
    ssh user@server
    ssh -l user server

    [root@1inux ~]# ssh centos@172.16.66.81
    The authenticity of host '172.16.66.81 (172.16.66.81)' can't be established.
    RSA key fingerprint is d6:3b:33:71:32:69:7a:dd:47:c2:49:03:ec:03:a1:5e.
    Are you sure you want to continue connecting (yes/no)? 
    [root@1inux ~]# ssh -l centos 172.16.66.81
    The authenticity of host '172.16.66.81 (172.16.66.81)' can't be established.
    RSA key fingerprint is d6:3b:33:71:32:69:7a:dd:47:c2:49:03:ec:03:a1:5e.
    Are you sure you want to continue connecting (yes/no)?


    -p PORT:指明要連接的端口:

    [root@1inux ~]# ssh -p 22 -l centos 172.16.66.81
    The authenticity of host '172.16.66.81 (172.16.66.81)' can't be established.
    RSA key fingerprint is d6:3b:33:71:32:69:7a:dd:47:c2:49:03:ec:03:a1:5e.
    Are you sure you want to continue connecting (yes/no)?

    -X :啟用X11Forwarding,即轉發X界面的請求;
    -x: 禁用;
    -Y: 啟用信任的X11Forwarding
    2、ssh 基于秘鑰的認證
    2.1、ssh-keygen語法:
    ssh-keygen [OPTIONS]

    -t {rsa|dsa} 密鑰類型 一般使用rsa
    -b # 指明密鑰長度
    -f /PATH/TO/OUTPUT_KEYFILE 指明密鑰文件
    -P '' :指明加密密鑰的密碼,表示使用空密碼

    [root@1inux ~]# ssh-keygen -t rsa    //生成密鑰對
    Generating public/private rsa key pair.
    Enter file in which to save the key (/root/.ssh/id_rsa): /root/.ssh/id_90  //定義保存的密鑰文件名
    Enter passphrase (empty for no passphrase):         //要求對生成的密鑰對加密,也可以不加密  輸入兩次回車就OK 
    Enter same passphrase again: 
    Your identification has been saved in /root/.ssh/id_90.        //說明已經生成密鑰
    Your public key has been saved in /root/.ssh/id_90.pub.        //說明已經生成公鑰
    The key fingerprint is:
    7a:17:b3:e7:6f:54:a1:30:23:62:7c:04:37:10:52:08 root@1inux
    The key's randomart image is:
    +--[ RSA 2048]----+
    |   E..+==+       |
    |     ..+.o.+   . |
    |      . o . + . .|
    |             .  .|
    |        S o    . |
    |       .   +  .  |
    |      . . o ..   |
    |       . . o  .  |
    |            .o.  |
    +-----------------+
    [root@1inux ~]# 
    [root@1inux ~]# ls .ssh/
    id_90  id_90.pub  known_hosts
    [root@1inux ~]# 
    -------------------------


    也可以指明秘鑰路徑 及密碼

    [root@1inux .ssh]# ssh-keygen -t rsa -f /root/.ssh/id_rsa -P ''  //經測試 名字必須為id_rsa
    Generating public/private rsa key pair.
    Your identification has been saved in /root/.ssh/id_rsa.
    Your public key has been saved in /root/.ssh/id_rsa.pub.
    The key fingerprint is:
    33:c3:f8:f3:2c:ed:88:cc:db:7a:97:5f:d0:de:ce:d9 root@1inux
    The key's randomart image is:
    +--[ RSA 2048]----+
    |                 |
    |                 |
    |                 |
    |       o     .   |
    |      . S   . .  |
    |       . +   o . |
    |        o. .  o .|
    |     o oo=+  . oo|
    |      *+o++..  .E|
    +-----------------+
    [root@1inux ~]# ls .ssh/
    id_rsa  id_rsa.pub  id_www  id_www.pub  known_hosts


    2.2、把公鑰部分復制到要登陸遠程主機的特定用戶(可不同于本地用戶)的家目錄下,追加保存至.ssh 目錄中的authorized_keys文件中;

    ssh-copy-id -i /PATH/TO/PUBKEY_FILE [user]@server 
    //使用此命令會自動將公鑰復制到目標主機指定用戶的家目錄下的.ssh/authorized_keys文件中
    
    [root@1inux ~]# ssh-copy-id -i /root/.ssh/id_rsa.pub henan@172.16.66.81
    henan@172.16.66.81's password: 
    Now try logging into the machine, with "ssh 'henan@172.16.66.81'", and check in:
      .ssh/authorized_keys
    to make sure we haven't added extra keys that you weren't expecting.
    
    

    2.3、驗證:

    [root@1inux .ssh]# ssh lfs@172.16.66.81
    Last login: Wed Apr  8 14:31:52 2015 from 172.16.66.90
    [lfs@1inux ~]$         //可以看到已經登錄成功
    [henan@1inux ~]$ whoami
    henan
    [henan@1inux ~]$ ifconfig | grep "172.16.66"
              inet addr:172.16.66.81  Bcast:172.16.255.255  Mask:255.255.0.0


    基于密鑰的命令總結

    1、[root@1inux .ssh]# ssh-keygen -t rsa -f /root/.ssh/id_rsa -P '' 
    2、[root@1inux ~]# ssh-copy-id -i /root/.ssh/id_rsa.pub henan@172.16.66.81
    3、ssh lfs@172.16.66.81


    2.4、通過ssh直接執行命令

    [root@1inux ~]# ssh -l henan 172.16.66.81 date    //由于此用于已經基于密鑰認證所以沒有要求輸入密碼
    Wed Apr  8 15:01:15 CST 2015 
    
    

    五、scp遠程復制工具的使用簡介
    語法:
    scp [OPTIONS] SRC...DEST
    常用選項:

    -r: 遞歸復制,復制目錄及內部文件時使用;
    -p: 保存源文件元數據信息中的屬主、屬組及權限;
    -q: 靜默模式
    -P PORT: 指明遠程服務器使用的端口;
    兩種模式:
    PUSH: scp [OPTIONS] /PATH/FROM/SOMEFILE ... user@server:/PATH/TO/DEST

    //復制本地文件至遠程主機 (但遠程目錄一定要有寫權限)

    PULL: SCP [OPTIONS] user@server:/PATH/FROM/SOMEFILE /PATH/TO/DEST

    //遠程目標主機文件至本地
    eg1:復制當前主機上的/etc/ssh/sshd_config至172.16.66.90主機的/tmp/aa目錄下

    [root@1inux ~]# scp -p /etc/ssh/sshd_config henan@172.16.66.90:/root    
    henan@172.16.66.90's password: 
    sshd_config                                                                  100% 3879     3.8KB/s   00:00    


    eg2:復制遠程主機/etc/fstab至當前主機當前目錄下

    [root@1inux ~]# ls
    anaconda-ks.cfg  Documents  grub.conf           install.log         Music     Public     Videos
    Desktop          Downloads  henan@172.16.66.90  install.log.syslog  Pictures  Templates
    [root@1inux ~]# scp root@172.16.66.90:/etc/fstab ./
    root@172.16.66.90's password: 
    fstab                                                                        100%  921     0.9KB/s   00:00    
    [root@1inux ~]# ls
    anaconda-ks.cfg  Documents  fstab      henan@172.16.66.90  install.log.syslog  Pictures  Templates
    Desktop          Downloads  grub.conf  install.log         Music               Public    Videos

    六、sftp的使用
    要使用sftp需要編輯/etc/ssh/sshd_config 開啟Subsystem 即:
    Subsystem sftp /usr/libexec/openssh/sftp-server
    語法:

    sftp [USER]@server


    常用命令:put get

    eg:
    
    [root@1inux ~]# sftp root@172.16.66.90
    Connecting to 172.16.66.90...
    root@172.16.66.90's password:         //輸入密碼
    sftp> help            //可以使用help查看其支持的命令
    Available commands:
    bye                                Quit sftp
    cd path                            Change remote directory to 'path'
    chgrp grp path                     Change group of file 'path' to 'grp'
    chmod mode path                    Change permissions of file 'path' to 'mode'
    chown own path                     Change owner of file 'path' to 'own'
    df [-hi] [path]                    Display statistics for current directory or
                                       filesystem containing 'path'
    exit                               Quit sftp
    get [-P] remote-path [local-path]  Download file
    help                               Display this help text
    lcd path                           Change local directory to 'path'
    lls [ls-options [path]]            Display local directory listing
    lmkdir path                        Create local directory
    ln oldpath newpath                 Symlink remote file
    lpwd                               Print local working directory
    ls [-1aflnrSt] [path]              Display remote directory listing
    lumask umask                       Set local umask to 'umask'
    mkdir path                         Create remote directory
    progress                           Toggle display of progress meter
    put [-P] local-path [remote-path]  Upload file
    pwd                                Display remote working directory
    quit                               Quit sftp
    rename oldpath newpath             Rename remote file
    rm path                            Delete remote file
    rmdir path                         Remove remote directory
    symlink oldpath newpath            Symlink remote file
    version                            Show SFTP version
    !command                           Execute 'command' in local shell
    !                                  Escape to local shell
    ?                                  Synonym for help====================================================================================


    七、增強服務端sshd配置指南
    1、不要使用默認端口;(修改默認端口為其他端口)
    配置文件:/etc/ssh/sshd_config
    Port 22
    service sshd restart //修改后需要重啟服務
    2、不要使用v1版本協議:
    Protocol 2
    3、限制可登陸的用戶 {需要添加}
    AllowUsers:允許登陸的用戶白名單 (多個用戶使用空格隔開)
    AllowGroups:允許登陸的組的白名單
    DenyUsers
    DenyGroups
    /etc/ssh/sshd_config

    # service sshd reload
    ==》 獲取配置文件詳細信息;【 man sshd_conifg 】
    4、設定空閑會話超時時長:
    5、利用防火墻設置ssh訪問策略:
    限定ssh服務僅允許***服務器分配有限的地址段內的主機訪問
    6、僅監聽特定的IP地址:
    7、使用強密碼策略:

    [root@1inux ssh]# tr -dc A-Za-z0-9 < /dev/urandom | head -c 30 | xargs
    Qe6zOmB2sBNpEONVcKhWS8T4bVrcb0

    8、使用基于密鑰的認證;
    9、禁止使用空密碼
    10、禁止root直接登陸
    PermitRootLogin no
    11、限制ssh的訪問頻度
    12、做好日志、經常做日志分析
    /var/log/secure

    安裝cygwin后,openssh默認不會安裝。需要在點setup.exe,然后在search里面找到openssh,把父節點都改成uninstall,把openssh那個節點改成install,安裝就可以。


    1、安裝openssh

    列出Linux種種可用的開源軟件,根據你的需要,選擇性地安裝。默認的都是skip即不安裝,在search里面搜openssh,單擊skip使之變為版本號,表示我們本次將要安裝它。除skip外還有其他4種標志Default、Install、Reinstall和Uninstall,依次代表:默認狀態、安裝、重新安裝和反安裝。我們這次只安裝openssh,如果以后還將其他工具,可以重新點擊setup.exe到這一步來選擇,那時你看到openssh前的默認標記為keep,意思是保持已安裝的軟件不變。


    2、配置環境變量

    新建系統變量:CYGWIN=ntsec tty

    在path中追加C:\cygwin64\bin


    3、配置SSH服務

    點擊桌面上的Cygwin,注意在win7中一定要以管理員身份運行,否則不能創建sshd服務。輸入以下命令

    cd /bin
    ssh-host-config
    

    配置中關鍵注意以下三項:

    Should privilege separation be used? (yes/no) no
    Do you want to install sshd as service? (yes/no) yes
    Enter the value of cygwin for the daemon:ntsec
    


    4、啟動sshd服務

    下次重啟電腦的時候sshd服務就會自動啟動,如果現在就想啟動該服務,輸入命令:

    net start sshd或cygrunsrv -S sshd

    上面可以看到亂碼了,只需要把這個bat腳本保存為ANSI格式就可以了,這個前幾天實際上也介紹了,這里就不多說了。


    后面會分享更多devops和DBA方面的內容,感興趣的朋友可以關注下~

網站首頁   |    關于我們   |    公司新聞   |    產品方案   |    用戶案例   |    售后服務   |    合作伙伴   |    人才招聘   |   

友情鏈接: 餐飲加盟

地址:北京市海淀區    電話:010-     郵箱:@126.com

備案號:冀ICP備2024067069號-3 北京科技有限公司版權所有