netstat、ss、ssh、route命令

netstat

  几十万并发的情况下netstat会没有响应,建议使用 ss 命令
    -a     # 显示所有连接中的Socket
    -t     # 显示TCP连接
    -u     # 显示UDP连接
    -n     # 显示所有已建立的有效连接
    netstat -anlp           # 查看链接
    netstat -tnlp           # 只查看tcp监听端口
    netstat -r              # 查看路由表

   并发数查看

    netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'
    SYN_RECV     # 正在等待处理的请求
    ESTABLISHED  # 正常数据传输状态,既当前并发数
    TIME_WAIT    # 处理完毕,等待超时结束的请求
    CLOSE_WAIT   # 客户端异常关闭,没有完成4次挥手  如大量可能存在攻击行为

ss

    netstat是遍历/proc下面每个PID目录,ss直接读/proc/net下面的统计信息。所以ss执行的时候消耗资源以及消耗的时间都比netstat少很多
    ss -s                          # 列出当前socket详细信息
    ss -l                          # 显示本地打开的所有端口
    ss -tnlp                       # 显示每个进程具体打开的socket
    ss -ant                        # 显示所有TCP socket
    ss -u -a                       # 显示所有UDP Socekt
    ss dst 192.168.119.113         # 匹配远程地址
    ss dst 192.168.119.113:http    # 匹配远程地址和端口号
    ss dst 192.168.119.113:3844    # 匹配远程地址和端口号
    ss src 192.168.119.103:16021   # 匹配本地地址和端口号
    ss -o state established '( dport = :smtp or sport = :smtp )'        # 显示所有已建立的SMTP连接
    ss -o state established '( dport = :http or sport = :http )'        # 显示所有已建立的HTTP连接
    ss -x src /tmp/.X11-unix/*         # 找出所有连接X服务器的进程

ssh

    ssh -p 22 user@192.168.1.209                            # 从linux ssh登录另一台linux
    ssh -p 22 root@192.168.1.209 CMD                        # 利用ssh操作远程主机
    scp -P 22 file root@ip:/dir                             # 把本地文件拷贝到远程主机
    scp -l 100000  file root@ip:/dir                        # 传输文件到远程,限制速度100M
    sshpass -p 'pwd' ssh -n root@$IP "echo hello"           # 指定密码远程操作
    ssh -o StrictHostKeyChecking=no $IP                     # ssh连接不提示yes
    ssh -t "su -"                                           # 指定伪终端 客户端以交互模式工作
    scp root@192.168.1.209:/RemoteDir /localDir             # 把远程指定文件拷贝到本地
    pscp -h host.ip /a.sh /opt/sbin/                        # 批量传输文件
    ssh -N -L2001:remotehost:80 user@somemachine            # 用SSH创建端口转发通道
    ssh -t host_A ssh host_B                                # 嵌套使用SSH
    ssh -t -p 22 $user@$Ip /bin/su - root -c {$Cmd};        # 远程su执行命令 Cmd="\"/sbin/ifconfig eth0\""
    ssh-keygen -t rsa                                       # 生成密钥
    ssh-copy-id -i xuesong@10.10.10.133                     # 传送key
    vi $HOME/.ssh/authorized_keys                           # 公钥存放位置
    sshfs name@server:/path/to/folder /path/to/mount/point  # 通过ssh挂载远程主机上的文件夹
    fusermount -u /path/to/mount/point                      # 卸载ssh挂载的目录
    ssh user@host cat /path/to/remotefile | diff /path/to/localfile -                # 用DIFF对比远程文件跟本地文件
    su - user -c "ssh user@192.168.1.1 \"echo -e aa |mail -s test mail@163.com\""    # 切换用户登录远程发送邮件
    pssh -h ip.txt -i uptime                                # 批量执行ssh yum install pssh解决ssh链接慢

    sed -i 's/GSSAPIAuthentication yes/GSSAPIAuthentication no/' /etc/ssh/sshd_config
    sed -i '/#UseDNS yes/a\UseDNS no' /etc/ssh/sshd_config
    /etc/init.d/sshd reload

route

    route                           # 查看路由表
    route add default  gw 192.168.1.1  dev eth0                        # 添加默认路由
    route add -net 172.16.0.0 netmask 255.255.0.0 gw 10.39.111.254     # 添加静态路由网关
    route del -net 172.16.0.0 netmask 255.255.0.0 gw 10.39.111.254     # 删除静态路由网关
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值