91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何進行遠程連接與openssh

發布時間:2021-11-08 10:00:12 來源:億速云 閱讀:176 作者:柒染 欄目:建站服務器

這篇文章將為大家詳細講解有關如何進行遠程連接與openssh,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。

1、openssh簡介

  傳統的網絡程序都是采用明文傳輸數據和密碼,如telnet、ftp等,存在很大的安全漏洞,***只需要使用一些數據包截取工具就可以獲得包括密碼在內的重要數據。正因如此,后來才出現了SSH (Secure shell,安全命令殼)。SSH是由芬蘭的一家公司所研發的加密通信協議,所有SSH傳輸的數據都是經過加密,可以有效防止數據的竊取以及'中間人'的***。SSH建立在應用層和傳輸層基礎上的安全協議,監聽tcp的22號端口,屬于是文本協議。OpenSSH是SSH的替代軟件,完全免費并且開放源代碼。當前ssh協議版本主要有兩種:

  sshv1是基于CRC-32做MAC,因此,不安全,建議勿用;

  sshv2基于雙方主機協商選擇最安全的MAC實現機制;加密機制及MAC機制是雙方協商選定;基于DH實現密鑰交換,基于RSA或DSA實現身份認證;客戶通過檢查服務端的主機密鑰來判定是否與其進一步通信。

  基于sshv2版本的通信方式主要如下圖所示;

如何進行遠程連接與openssh

  在Centos6中已經默認安裝了openssh,可以使用如下命令查看安裝情況:

[root@mylinux ~]# rpm -qa |grep ssh
openssh-clients-5.3p1-118.1.el6_8.x86_64     #openssh的客戶端程序
libssh3-1.4.2-2.el6_7.1.x86_64               #openssh的協議實現模塊
openssh-5.3p1-118.1.el6_8.x86_64             #openssh的主程序文件
openssh-server-5.3p1-118.1.el6_8.x86_64      #openssh的服務器程序

  安裝openssh后,會在系統中創建名為sshd的服務,用戶可以通過該服務啟動或關閉openssh。默認情況下,openssh會開機自動啟動。

[root@mylinux ~]# chkconfig --list sshd     
sshd            0:關閉  1:關閉  2:啟用  3:啟用  4:啟用  5:啟用  6:關閉
[root@mylinux ~]# chkconfig --level 2345 sshd off
[root@mylinux ~]# chkconfig --list sshd          
sshd            0:關閉  1:關閉  2:關閉  3:關閉  4:關閉  5:關閉  6:關閉
[root@mylinux ~]# chkconfig --level 2345 sshd on
[root@mylinux ~]# service sshd start
[root@mylinux ~]# /etc/init.d/sshd stop
停止 sshd:                                                [確定]
[root@mylinux ~]# /etc/init.d/sshd start
正在啟動 sshd:                                            [確定]
[root@mylinux ~]# /etc/init.d/sshd status
openssh-daemon (pid  19535) 正在運行...

2、openssh配置文件

  • openssh配置文件

 openssh的主要配置文件有兩個:/etc/ssh/ssh_config和/etc/ssh/sshd_config,它們分別用于配置openssh客戶端以及服務器端。此外,/etc/ssh目錄中還有一些其他的系統級配置文件,其中各配置文件的名稱以及功能說明為:

moduli                 #配置用于構建安全傳輸層所必須的秘鑰組      
ssh_config             #系統級的SSH客戶端配置文件
sshd_config            #sshd守護進程的配置文件
ssh_host_dsa_key       #sshd進程的DSA私鑰
ssh_host_dsa_key.pub   #sshd進程的DSA公鑰
ssh_host_key           #SSH1版本所使用的RSA私鑰
ssh_host_key.pub       #SSH1版本所使用的RSA公鑰
ssh_host_rsa_key       #SSH2版本所使用的RSA私鑰
ssh_host_rsa_key.pub   #SSH2版本所使用的RSA公鑰

服務器配置文件/etc/ssh/sshd_config

 /etc/ssh/sshd_config是openssh服務器的配置文件,通過更改該文件中的配置可以改變sshd進行的運行屬性。該文件中每一行都是用'選項   值'的格式,其中'選項'不區分大小寫。

[root@promote ssh]# cat sshd_config 
#       $OpenBSD: sshd_config,v 1.80 2008/07/02 02:24:18 djm Exp $
# This is the sshd server system-wide configuration file.  See
# sshd_config(5) for more information.
# This sshd was compiled with PATH=/usr/local/bin:/bin:/usr/bin
# The strategy used for options in the default sshd_config shipped with
# OpenSSH is to specify options with their default value where
# possible, but leave them commented.  Uncommented options change a
# default value.
#Port 22                                #sshd監聽端口,默認為22
#AddressFamily any
#ListenAddress 0.0.0.0                  #sshd服務綁定的IP地址
#ListenAddress ::
# Disable legacy (protocol version 1) support in the server for new
# installations. In future the default will change to require explicit
# activation of protocol 1
Protocol 2                              #默認只用2.*版本的ssh協議
# HostKey for protocol version 1
#HostKey /etc/ssh/ssh_host_key          #ssh2版本的秘鑰存放位置
# HostKeys for protocol version 2
#HostKey /etc/ssh/ssh_host_rsa_key      #ssh3版本的RSA秘鑰存放位置
#HostKey /etc/ssh/ssh_host_dsa_key      #ssh3版本的DSA秘鑰存放位置
# Lifetime and size of ephemeral version 1 server key
#KeyRegenerationInterval 1h             #秘鑰每隔1小時生成一次
#ServerKeyBits 1024                     #ssh服務器秘鑰的位數
# Logging
# obsoletes QuietMode and FascistLogging
#SyslogFacility AUTH                    #設置sshd發送到syslog所使用的日志類型
SyslogFacility AUTHPRIV                 #默認為AUTHPRIV
#LogLevel INFO                          #syslog日志等級
# Authentication:
#LoginGraceTime 2m
#PermitRootLogin yes                    #如果為yes則允許root用戶使用ssh登錄,no則不允許
#設置sshd在接受登錄請求前是否檢查用戶的主目錄以及rhost文件的權限和所有者等信息
#StrictModes yes                        
#MaxAuthTries 6                         #設置最多允許6次登錄失敗
#MaxSessions 10                         #設置最大連接數為10 
#RSAAuthentication yes                  #是否允許RSA驗證 
#PubkeyAuthentication yes               #是否允許公鑰驗證
#AuthorizedKeysFile     .ssh/authorized_keys     #公鑰文件的存放位置
#AuthorizedKeysCommand none
#AuthorizedKeysCommandRunAs nobody
# For this to work you will also need host keys in /etc/ssh/ssh_known_hosts
#RhostsRSAAuthentication no
# similar for protocol version 2
#HostbasedAuthentication no
# Change to yes if you don't trust ~/.ssh/known_hosts for
# RhostsRSAAuthentication and HostbasedAuthentication
#IgnoreUserKnownHosts no               #設置sshd在進行RhostsRSAAuthentication驗證時是否信任用戶的'~/.ssh/known_hosts'文件       
# Don't read the user's ~/.rhosts and ~/.shosts files
#IgnoreRhosts yes                      #驗證時是否使用'~/.rhosts 和 ~/.shosts'文件
# To disable tunneled clear text passwords, change to no here!
#PasswordAuthentication yes
#PermitEmptyPasswords no
PasswordAuthentication yes             #設置是否需要密碼驗證
# Change to no to disable s/key passwords
#ChallengeResponseAuthentication yes
ChallengeResponseAuthentication no
# Kerberos options                     #Kerberos 驗證
#KerberosAuthentication no
#KerberosOrLocalPasswd yes
#KerberosTicketCleanup yes
#KerberosGetAFSToken no
#KerberosUseKuserok yes
# GSSAPI options                       #GSSAPI 驗證
#GSSAPIAuthentication no
GSSAPIAuthentication yes
#GSSAPICleanupCredentials yes
GSSAPICleanupCredentials yes
#GSSAPIStrictAcceptorCheck yes
#GSSAPIKeyExchange no                  #清除驗證信息
# Set this to 'yes' to enable PAM authentication, account processing, 
# and session processing. If this is enabled, PAM authentication will 
# be allowed through the ChallengeResponseAuthentication and
# PasswordAuthentication.  Depending on your PAM configuration,
# PAM authentication via ChallengeResponseAuthentication may bypass
# the setting of "PermitRootLogin without-password".
# If you just want the PAM account and session checks to run without
# PAM authentication, then enable this but set PasswordAuthentication
# and ChallengeResponseAuthentication to 'no'.
#UsePAM no        
UsePAM yes                             #是否使用PAM驗證   
# Accept locale-related environment variables
AcceptEnv LANG LC_CTYPE LC_NUMERIC LC_TIME LC_COLLATE LC_MONETARY LC_MESSAGES
AcceptEnv LC_PAPER LC_NAME LC_ADDRESS LC_TELEPHONE LC_MEASUREMENT
AcceptEnv LC_IDENTIFICATION LC_ALL LANGUAGE
AcceptEnv XMODIFIERS
#AllowAgentForwarding yes              #是否允許TCP轉發
#AllowTcpForwarding yes                
#GatewayPorts no                        
#X11Forwarding no                      #設置sshd是否允許x11轉發  
X11Forwarding yes
#X11DisplayOffset 10
#X11UseLocalhost yes
#PrintMotd yes
#PrintLastLog yes
#TCPKeepAlive yes                      #TCP活動保持
#UseLogin no
#UsePrivilegeSeparation yes
#PermitUserEnvironment no
#Compression delayed
#ClientAliveInterval 0                 #客戶端活動間隔時間
#ClientAliveCountMax 3                 #活動客戶端的最大數量
#ShowPatchLevel no
#UseDNS yes
#PidFile /var/run/sshd.pid             #保存進程ID號的文件位置
#MaxStartups 10:30:100
#PermitTunnel no
#ChrootDirectory none
# no default banner path
#Banner none
# override default of no subsystems
Subsystem       sftp    /usr/libexec/openssh/sftp-server
# Example of overriding settings on a per-user basis
#Match User anoncvs
#       X11Forwarding no
#       AllowTcpForwarding no
#       ForceCommand cvs server

客戶端配置文件/etc/ssh/ssh_config

[root@promote home]# cat /etc/ssh/ssh_config 
#       $OpenBSD: ssh_config,v 1.25 2009/02/17 01:28:32 djm Exp $
# This is the ssh client system-wide configuration file.  See
# ssh_config(5) for more information.  This file provides defaults for
# users, and the values can be changed in per-user configuration files
# or on the command line.
# Configuration data is parsed as follows:     #配置選項生效的優先級
#  1. command line options                     #1表示命令行選項   
#  2. user-specific file                       #2表示用戶指定文件
#  3. system-wide file                         #3表示系統范圍的文件
# Any configuration value is only changed the first time it is set.
# Thus, host-specific definitions should be at the beginning of the
# configuration file, and defaults at the end.
# Site-wide defaults for some commonly used options.  For a comprehensive
# list of available options, their meanings and defaults, please see the
# ssh_config(5) man page.
# Host *                                      #適用的計算機范圍,'*'表示全部
#   ForwardAgent no                           #連接是否經過驗證代理轉發給遠程計算機
#   ForwardX11 no                             #設置是否自動重定向x11連接
#   RhostsRSAAuthentication no                #設置是否使用RSA進行rhosts的安全驗證
#   RSAAuthentication yes                     #設置是否使用RSA進行安全驗證
#   PasswordAuthentication yes                #設置是否需要密碼驗證
#   HostbasedAuthentication no
#   GSSAPIAuthentication no
#   GSSAPIDelegateCredentials no
#   GSSAPIKeyExchange no
#   GSSAPITrustDNS no
#   BatchMode no                            #如果為yes,則禁止交互輸入密碼是的提示信息
#   CheckHostIP yes
#   AddressFamily any
#   ConnectTimeout 0
#   StrictHostKeyChecking ask
#   IdentityFile ~/.ssh/identity
#   IdentityFile ~/.ssh/id_rsa            #RSA安全驗證文件的位置
#   IdentityFile ~/.ssh/id_dsa            #DSA安全驗證文件的位置
#   Port 22                               #服務器端口
#   Protocol 2,1                          #使用的ssh協議 
#   Cipher 3des                           #加密密碼 
#   Ciphers aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-cbc,3des-cbc
#   MACs hmac-md5,hmac-sha1,umac-64@openssh.com,hmac-ripemd160
#   EscapeChar ~                          #設置EscapeChar字符 
#   Tunnel no
#   TunnelDevice any:any
#   PermitLocalCommand no
#   VisualHostKey no
Host *
        GSSAPIAuthentication yes
# If this option is set to yes then remote X11 clients will have full access
# to the original X11 display. As virtually no X11 client supports the untrusted
# mode correctly we set this to yes.
        ForwardX11Trusted yes                    #是否允許轉發x11會話
# Send locale-related environment variables      #局部環境變量
        SendEnv LANG LC_CTYPE LC_NUMERIC LC_TIME LC_COLLATE LC_MONETARY LC_MESSAGES 
        SendEnv LC_PAPER LC_NAME LC_ADDRESS LC_TELEPHONE LC_MEASUREMENT 
        SendEnv LC_IDENTIFICATION LC_ALL LANGUAGE
        SendEnv XMODIFIERS

3、ssh/scp相關命令的使用

  • SSH遠程登錄

 SSH是openssh所提供的加密方式的遠程登錄程序,可以替代傳統不安全的Telnet、rsh等程序。使用SSH登錄Linux服務器后可以使用操作系統的所有功能,這與Telnet沒有區別,但是SSH為客戶端和服務器之間建立了加密的數據傳送通道,更加安全和可靠。命令格式為:

ssh [-1246AaCfgKkMNnqsTtVvXxYy] [-b bind_address] [-c cipher_spec] [-D
         [bind_address:]port] [-e escape_char] [-F configfile] [-I pkcs11]
         [-i identity_file] [-L  [bind_address:]port:host:hostport]
         [-l login_name] [-m mac_spec] [-O ctl_cmd] [-o option] [-p port] [-R
         [bind_address:]port:host:hostport] [-S ctl_path] [-W host:port] [-w
         local_tun[:remote_tun]] [user@]hostname [command]

常用命令選項:

 -1:強制只使用SSH1版本協議

 -2:強制只使用SSH2版本協議

 -4:強制只是用IPv4地址

 -6:強制只是用IPv6地址

 -A:啟用認證代理連接的轉發

 -a:禁止認證代理連接的轉發 

 -b bind_address:使用bind_address作為連接的源地址

 -C:壓縮所有數據

 -D [bind_address:]port:指定本地動態應用級別端口轉發

 -g:允許遠程主機連接本地轉發端口

 -l login_name:指定SSH登錄遠程主機的用戶 

 -p port:指定連接的端口

 -q:安靜模式,忽略所有的警告信息

 -V:顯示版本信息

 -v:顯示調試信息

 -X:允許X11連接轉發

 -x:禁止X11連接轉發

[root@promote home]# ifconfig    #查看當前主機IP
eth0      Link encap:Ethernet  HWaddr 00:0C:29:B7:AB:D0  
          inet addr:192.168.191.128  Bcast:192.168.191.255  Mask:255.255.255.0
          inet6 addr: fe80::20c:29ff:feb7:abd0/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:1002 errors:0 dropped:0 overruns:0 frame:0
          TX packets:669 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:90190 (88.0 KiB)  TX bytes:89614 (87.5 KiB)
lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:113 errors:0 dropped:0 overruns:0 frame:0
          TX packets:113 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:18338 (17.9 KiB)  TX bytes:18338 (17.9 KiB)
[root@promote home]# ssh 192.168.191.129      #連接遠程主機192.168.191.129
The authenticity of host '192.168.191.129 (192.168.191.129)' can't be established.
RSA key fingerprint is c6:4b:1c:ca:5b:fd:9f:6e:7f:0a:20:59:9d:79:94:3f.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.191.129' (RSA) to the list of known hosts.
reverse mapping checking getaddrinfo for promote.cache-dns.local [192.168.191.129] failed - POSSIBLE BREAK-IN ATTEMPT!
root@192.168.191.129's password: 
Last login: Wed May 17 03:53:02 2017 from 192.168.191.1   #連接成功
[root@promote ~]# ifconfig                                #查看連接后的主機IP
eth0      Link encap:Ethernet  HWaddr 00:0C:29:F0:56:04  
          inet addr:192.168.191.129  Bcast:192.168.191.255  Mask:255.255.255.0
          inet6 addr: fe80::20c:29ff:fef0:5604/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:57 errors:0 dropped:0 overruns:0 frame:0
          TX packets:51 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:7404 (7.2 KiB)  TX bytes:6924 (6.7 KiB)
lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)
  • 使用scp進行遠程文件復制

   scp的全稱為secure copy(安全性復制),可以實現與rcp服務一樣的遠程文件復制功能。但由于scp是基于ssh協議,實現了數據的加密,所以它比傳統的rcp更加安全可靠,其命令格式為:

scp [-1246BCpqrv] [-c cipher] [-F ssh_config] [-i identity_file] [-l limit]
         [-o ssh_option] [-P port] [-S program] [[user@]host1:]file1 ...
         [[user@]host2:]file2

常用命令選項:

 -1:強制只使用SSH1版本協議

 -2:強制只使用SSH2版本協議

 -4:強制只是用IPv4地址

 -6:強制只是用IPv6地址

 -C:壓縮所有數據

 -l:限制傳輸速率,單位為KB/秒

 -P port:指定連接的端口

 -r:遞歸方式復制目錄所有內容

 -v:調試方式,顯示更多的輸出信息 

遠程復制單個文件

[root@mylinux ~]# scp mbr.dmp root@192.168.191.129:/home
reverse mapping checking getaddrinfo for promote.cache-dns.local [192.168.191.129] failed - POSSIBLE BREAK-IN ATTEMPT!
root@192.168.191.129's password: 
mbr.dmp                                                100%  512     0.5KB/s   00:00

遠程復制整個目錄

[root@mylinux ~]# scp -r /etc/yum.repos.d root@192.168.191.129:/home/
reverse mapping checking getaddrinfo for promote.cache-dns.local [192.168.191.129] failed - POSSIBLE BREAK-IN ATTEMPT!
root@192.168.191.129's password: 
epel-testing.repo                                      100% 1056     1.0KB/s   00:00   
CentOS-Media.repo                                      100%  630     0.6KB/s   00:00   
epel.repo                                              100%  957     0.9KB/s   00:00   
CentOS-Base.repo                                       100% 1926     1.9KB/s   00:00   
CentOS-Debuginfo.repo                                  100%  638     0.6KB/s   00:00   
CentOS-Vault.repo                                      100% 3664     3.6KB/s   00:00

使用通配符

[root@promote home]# scp -r /etc/httpd/* root@192.168.191.129:/home/ 
reverse mapping checking getaddrinfo for promote.cache-dns.local [192.168.191.129] failed - POSSIBLE BREAK-IN ATTEMPT!
root@192.168.191.129's password: 
magic                                                  100%   13KB  12.8KB/s   00:00   
httpd.conf                                             100%   34KB  33.6KB/s   00:00   
php.conf                                               100%  674     0.7KB/s   00:00   
README                                                 100%  392     0.4KB/s   00:00   
welcome.conf                                           100%  299     0.3KB/s   00:00   
access_log-20170512                                    100%   34KB  34.2KB/s   00:00   
error_log-20170512                                     100% 3278     3.2KB/s   00:00   
error_log                                              100%    0     0.0KB/s   00:00   
access_log                                             100%    0     0.0KB/s   00:00   
mod_proxy_ftp.so                                       100%   35KB  34.8KB/s   00:00   
mod_setenvif.so                                        100%   14KB  14.2KB/s   00:00   
mod_log_config.so                                      100%   31KB  30.5KB/s   00:00   
mod_cgid.so                                            100%   39KB  39.0KB/s   00:00   ...

關于SSH的優化方式 

1、Only Use SSH Protocol 2

2、Limit Users' SSH Access

  AllowUsers 白名單 (二選一)

  DenyUsers 黑名單

3、Configure Idle Log Out Timeout Interval

  ClientAliveInterval 300

  ClientAliveCountMax 0      設定空閑會話超時時長;

4、Firewall SSH Port #22     使用iptables設置ssh服務安全訪問策略;

5、Change SSH Port and Limit IP Binding

  Port 300勿使用默認22端口;

  ListenAddress 192.168.1.5

  ListenAddress 202.54.1.5

6、Use Strong SSH Passwords and Passphrase    使用足夠長、足夠復雜的密碼,且定期更換

    genpasswd() {

    local l=$1

           [ "$l" == "" ] && l=20

          tr -dc A-Za-z0-9_ < /dev/urandom | head -c ${l} | xargs}

7、Use Public Key Based Authentication使用公鑰認證

8、Disable Empty Passwords

9、Thwart SSH Crackers (Brute Force Attack)

    google: ssh best practice

10、Rate-limit Incoming Port # 22 Connections    限制ssh訪問頻度;

11、Use Log Analyzer                             記錄好日志,經常做日志分析

關于如何進行遠程連接與openssh就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

屏山县| 青铜峡市| 体育| 化州市| 商都县| 华安县| 龙口市| 云阳县| 卢氏县| 仙居县| 轮台县| 南川市| 睢宁县| 彰化市| 遂昌县| 棋牌| 南雄市| 兴和县| 旌德县| 龙口市| 玉龙| 兴安盟| 伊川县| 潼南县| 股票| 江城| 巴彦淖尔市| 凯里市| 苍溪县| 乐至县| 青海省| 香河县| 东海县| 吴桥县| 新和县| 富宁县| 中方县| 岳西县| 平顶山市| 衢州市| 伽师县|