ssh命令 – 安全连接客户端

ssh命令是openssh套件中的客户端连接工具,可以给予ssh加密协议实现安全的远程登录服务器,实现对服务器的远程管理。

语法格式: ssh [参数] [远程主机]

常用参数:

-1    强制使用ssh协议版本1
-2    强制使用ssh协议版本2
-4    强制使用IPv4地址
-6    强制使用IPv6地址
-A    开启认证代理连接转发功能
-a    关闭认证代理连接转发功能
-b<IP地址>    使用本机指定的地址作为对位连接的源IP地址
-C    请求压缩所有数据
-F<配置文件>    指定ssh指令的配置文件,默认的配置文件为“/etc/ssh/ssh_config”
-f    后台执行ssh指令
-g    允许远程主机连接本机的转发端口
-i<身份文件>    指定身份文件(即私钥文件)
-l<登录名>    指定连接远程服务器的登录用户名
-N    不执行远程指令
-o<选项>    指定配置选项
-p<端口>    指定远程服务器上的端口
-q    静默模式,所有的警告和诊断信息被禁止输出
-X    开启X11转发功能
-x    关闭X11转发功能
-y    开启信任X11转发功能

参考实例

登录远程服务器:

[root@linuxcool ~]# ssh 202.102.240.88

用test用户连接远程服务器:

[root@linuxcool ~]# ssh -l test 202.102.220.88

查看分区列表:

[root@linuxcool ~]# ssh 202.102.220.88 /sbin/fdisk -l

强制使用ssh协议版本1:

[root@linuxcool ~]# ssh -1

开启认证代理连接转发功能:

[root@linuxcool ~]# ssh -A

ping命令 – 测试主机间网络连通性

ping命令主要用来测试主机之间网络的连通性,也可以用于。执行ping指令会使用ICMP传输协议,发出要求回应的信息,若远端主机的网络功能没有问题,就会回应该信息,因而得知该主机运作正常。

不过值得我们注意的是:Linux系统下的ping命令与Windows系统下的ping命令稍有不同。Windows下运行ping命令一般会发出4个请求就结束运行该命令;而Linux下不会自动终止,此时需要我们按CTR+C终止或者使用-c参数为ping命令指定发送的请求数目。

语法格式:ping [参数] [目标主机]

常用参数:

-d    使用Socket的SO_DEBUG功能
-c    指定发送报文的次数
-i    指定收发信息的间隔时间
-I    使用指定的网络接口送出数据包
-l    设置在送出要求信息之前,先行发出的数据包
-n    只输出数值
-p    设置填满数据包的范本样式
-q    不显示指令执行过程
-R    记录路由过程
-s    设置数据包的大小
-t    设置存活数值TTL的大小
-v    详细显示指令的执行过程

参考实例

检测与linuxcool网站的连通性:

[root@linuxcool ~]# ping www.linuxcool.com

连续ping4次:

[root@linuxcool ~]# ping -c 4 www.linuxcool.com 

设置次数为4,时间间隔为3秒:

[root@linuxcool ~]# ping -c 4 -i 3 www.linuxcool.com

利用ping命令获取指定网站的IP地址:

[root@linuxcool ~]# ping -c 1 linuxcool.com | grep from | cut -d " " -f 4
220.181.57.216

netstat命令 – 显示网络状态

netstat 命令用于显示各种网络相关信息,如网络连接,路由表,接口状态 (Interface Statistics),masquerade 连接,多播成员 (Multicast Memberships) 等等。

从整体上看,netstat的输出结果可以分为两个部分:一个是Active Internet connections,称为有源TCP连接,其中”Recv-Q”和”Send-Q”指%0A的是接收队列和发送队列。这些数字一般都应该是0。如果不是则表示软件包正在队列中堆积。这种情况只能在非常少的情况见到;另一个是Active UNIX domain sockets,称为有源Unix域套接口(和网络套接字一样,但是只能用于本机通信,性能可以提高一倍)。

语法格式:netstat [参数]

常用参数:

-a    显示所有连线中的Socket
-p    显示正在使用Socket的程序识别码和程序名称
-u    显示UDP传输协议的连线状况
-i
显示网络界面信息表单
-n    直接使用IP地址,不通过域名服务器

参考实例

显示详细的网络状况:

[root@linuxcool ~]# netstat -a

显示当前户籍UDP连接状况:

[root@linuxcool ~]# netstat -nu

显示UDP端口号的使用情况:

[root@linuxcool ~]# netstat -apu 
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address  Foreign Address  State  PID/Program name    
udp        0      0 0.0.0.0:bootpc          0.0.0.0:*      4000/dhclient       
udp        0      0 localhost:323           0.0.0.0:*      3725/chronyd        
udp6       0      0 localhost:323           [::]:*         3725/chronyd 

显示网卡列表:

[root@linuxcool ~]# netstat -i 
Kernel Interface table 
Iface MTU Met  RX-OK  RX-ERR  RX-DRP RX-OVR  TX-OK TX-ERR TX-DRP TX-OVR Flg 
eth0 1500   0  181864   0      0       0     141278   0     0     0    BMRU 
lo   16436  0   3362    0      0       0     3362     0     0     0    LRU

显示组播组的关系:

[root@linuxcool ~]# netstat -g 
IPv6/IPv4 Group Memberships Interface    
RefCnt Group 
--------------- ------ --------------------- 
lo        1   ALL-SYSTEMS.MCAST.NET 
eth0      1   ALL-SYSTEMS.MCAST.NET lo       1   ff02::1 
eth0      1   ff02::1:ff0a:b0c eth0          1   ff02::1

ifconfig命令 – 显示或设置网络设备

ifconfig命令的英文全称是“network interfaces configuring”,即用于配置和显示Linux内核中网络接口的网络参数。用ifconfig命令配置的网卡信息,在网卡重启后机器重启后,配置就不存在。要想将上述的配置信息永远的存的电脑里,那就要修改网卡的配置文件了。

语法格式:ifconfig [参数]

常用参数:

add<地址>    设置网络设备IPv6的IP地址
del<地址>    删除网络设备IPv6的IP地址
down    关闭指定的网络设备
up    启动指定的网络设备
IP地址    指定网络设备的IP地址

参考实例

显示网络设备信息:

[root@linuxcool ~]# ifconfig
eth0   Link encap:Ethernet HWaddr 00:50:56:0A:0B:0C       
       inet addr:192.168.0.3 Bcast:192.168.0.255 Mask:255.255.255.0
       inet6 addr: fe80::250:56ff:fe0a:b0c/64 Scope:Link     
       UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1      
       RX packets:172220 errors:0 dropped:0 overruns:0 frame:0      
       TX packets:132379 errors:0 dropped:0 overruns:0 carrier:0 
       collisions:0 txqueuelen:1000       
       RX bytes:87101880 (83.0 MiB) TX bytes:41576123 (39.6 MiB) 
       Interrupt:185 Base address:0x2024  
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:2022 errors:0 dropped:0 overruns:0 frame:0      
      TX packets:2022 errors:0 dropped:0 overruns:0 carrier:0   
      collisions:0 txqueuelen:0       
      RX bytes:2459063 (2.3 MiB) 
      TX bytes:2459063 (2.3 MiB)

启动关闭指定网卡:

[root@linuxcool ~]# ifconfig eth0 down
[root@linuxcool ~]# ifconfig eth0 up 

为网卡配置和删除IPv6地址:

[root@linuxcool ~]# ifconfig eth0 add 33ffe:3240:800:1005::2/64
[root@linuxcool ~]# ifconfig eth0 del 33ffe:3240:800:1005::2/64

用ifconfig修改MAC地址:

[root@linuxcool ~]# ifconfig eth0 down
[root@linuxcool ~]# ifconfig eth0 hw ether 00:AA:BB:CC:DD:EE
[root@linuxcool ~]# ifconfig eth0 up
[root@linuxcool ~]# ifconfig eth1 hw ether 00:1D:1C:1D:1E 
[root@linuxcool ~]# ifconfig eth1 up

配置IP地址:

[root@linuxcool ~]# ifconfig eth0 192.168.1.56 [root@linuxcool ~]#
ifconfig eth0 192.168.1.56 netmask 255.255.255.0 [root@linuxcool ~]#
ifconfig eth0 192.168.1.56 netmask 255.255.255.0 broadcast
192.168.1.255

ss命令 – 显示活动套接字信息

ss是Socket Statistics的缩写。ss命令用来显示处于活动状态的套接字信息。它可以显示和netstat类似的内容。但ss的优势在于它能够显示更多更详细的有关TCP和连接状态的信息,而且比netstat更快速更高效。

语法格式:ss [参数]

常用参数:

-n    不解析服务名称,已数字方式显示
-a    显示所有套接字
-l    显示处于监听状态的套接字
-o    显示计时器信息
-e    显示详细的套接字信息
-m    显示套接字的内存使用情况
-p    显示使用套接字的进程
-i    显示内部的TCP信息
-s    显示套接字使用概况
-4    仅显示ipv4的套接字
-6    仅显示ipv6的套接字
-0    显示PACKET套接字
-t    只显示TCP套接字
-u    只显示UDP套接字
-d    只显示DCCP套接字
-w    只显示RAW套接字
-x    只显示 Unix套接字
-D

将原始TCP套接字信息转储到文件
参考实例

显示TCP套接字:

[root@linuxcool ~]# ss -t -a 
State     Recv-Q     Send-Q     Local Address:Port     Peer Address:Port   
LISTEN    0          128        0.0.0.0:ssh            0.0.0.0:*                                
ESTAB     0          52         192.168.60.19:ssh      192.168.30.21:59321               
LISTEN    0          128        *:websm                *:*               
LISTEN    0          128        [::]:ssh               [::]:* 

显示UDP套接字:

[root@linuxcool ~]# ss -u -a
State     Recv-Q     Send-Q     Local Address:Port     Peer Address:Port              
UNCONN    0          0          0.0.0.0:bootpc         0.0.0.0:*                 
UNCONN    0          0          127.0.0.1:323          0.0.0.0:*                 
UNCONN    0          0          [::1]:323              [::]:*  

显示套接字使用概况:

[root@linuxcool ~]# ss -s
Total: 185
TCP:   4 (estab 1, closed 0, orphaned 0, timewait 0)
Transport Total     IP        IPv6
RAW       1         0         1        
UDP       3         2         1        
TCP       4         2         2        
INET      8         4         4        
FRAG      0         0         0   

 
Last modification:December 29, 2021
If you think my article is useful to you, please feel free to appreciate