首页 > 系统相关 >Linux-shell实例手册-网络操作

Linux-shell实例手册-网络操作

时间:2024-11-01 17:15:31浏览次数:3  
标签:shell 1.1 nmap IP route 192.168 实例 ssh Linux

本文章讲解的是在linux下跟网络相关的一些操作和命令,喜欢就点赞收藏哦,方便随时查阅!

文章目录

1 Linux下网络基本命令

2 netstat

3 ssh

4 网卡配置文件

5 route

6 解决ssh链接慢

7 ftp上传

8 nmap

9  流量切分线路

10 snmp


1 Linux下网络基本命令

    rz   # 通过ssh上传小文件
    sz   # 通过ssh下载小文件
    ifconfig eth0 down                  # 禁用网卡
    ifconfig eth0 up                    # 启用网卡
    ifup eth0:0                         # 启用网卡
    mii-tool em1                        # 查看网线是否连接
    traceroute www.baidu.com            # 测试跳数
    vi /etc/resolv.conf                 # 设置DNS  nameserver IP 定义DNS服务器的IP地址
    nslookup www.moon.com               # 解析域名IP
    dig -x www.baidu.com                # 解析域名IP
    curl -I www.baidu.com               # 查看网页http头
    tcpdump tcp port 22                 # 抓包
    lynx                                # 文本上网
    wget -P 路径 http地址               # 下载  包名:wgetrc
    curl -d "user=xuesong&pwd=123" http://www.abc.cn/Result    # 提交web页面表单 需查看表单提交地址
    rsync -avzP -e "ssh -p 22" /dir user@$IP:/dir              # 同步目录 # --delete 无差同步 删除目录下其它文件
    ifconfig eth0:0 192.168.1.221 netmask 255.255.255.0        # 增加逻辑IP地址
    mtr -r www.baidu.com                                       # 测试网络链路节点响应时间 # trace ping 结合
    echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all           # 禁ping
    ipcalc -m "$ip" -p "$num"                                  # 根据IP和主机最大数计算掩码
    dig +short txt hacker.wp.dg.cx                             # 通过 DNS 来读取 Wikipedia 的hacker词条
    host -t txt hacker.wp.dg.cx                                # 通过 DNS 来读取 Wikipedia 的hacker词条
    net rpc shutdown -I IP_ADDRESS -U username%password        # 远程关掉一台WINDOWS机器
    wget --random-wait -r -p -e robots=off -U Mozilla www.example.com    # 递归方式下载整个网站

2 netstat

        -a     # 显示所有连接中的Socket
        -t     # 显示TCP连接
        -u     # 显示UDP连接
        -n     # 显示所有已建立的有效连接
        netstat -anlp           # 查看链接
        netstat –r              # 查看路由表

3 ssh

        ssh -p 22 [email protected]                            # 从linux ssh登录另一台linux
        ssh -p 22 [email protected] CMD                        # 利用ssh操作远程主机
        scp -P 22 文件 root@ip:/目录                            # 把本地文件拷贝到远程主机
        sshpass -p '密码' ssh -n root@$IP "echo hello"          # 指定密码远程操作
        ssh -o StrictHostKeyChecking=no $IP                     # ssh连接不提示yes
        ssh -t "su -"                                           # 指定伪终端 客户端以交互模式工作
        scp [email protected]:远程目录 本地目录                # 把远程指定文件拷贝到本地
        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 [email protected]                     # 传送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 [email protected] \"echo -e aa |mail -s test [email protected]\""    # 切换用户登录远程发送邮件

4 网卡配置文件

        vi /etc/sysconfig/network-scripts/ifcfg-eth0

        DEVICE=eth0
        BOOTPROTO=none
        BROADCAST=192.168.1.255
        HWADDR=00:0C:29:3F:E1:EA
        IPADDR=192.168.1.55
        NETMASK=255.255.255.0
        NETWORK=192.168.1.0
        ONBOOT=yes
        TYPE=Ethernet
        GATEWAY=192.168.1.1

5 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     # 删除静态路由网关

6 解决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 restart

7 ftp上传

        ftp -i -v -n $HOST <<END
        user $USERNAME $PASSWORD
        cd /ftp
        mkdir data
        cd data
        mput *.tar.gz
        bye
END

8 nmap

        nmap -PT 192.168.1.1-111             # 先ping在扫描主机开放端口
        nmap -O 192.168.1.1                  # 扫描出系统内核版本
        nmap -sV 192.168.1.1-111             # 扫描端口的软件版本
        nmap -sS 192.168.1.1-111             # 半开扫描(通常不会记录日志)
        nmap -P0 192.168.1.1-111             # 不ping直接扫描
        nmap -d 192.168.1.1-111              # 详细信息
        nmap -D 192.168.1.1-111              # 无法找出真正扫描主机(隐藏IP)
        nmap -p 20-30,139,60000-             # 端口范围  表示:扫描20到30号端口,139号端口以及所有大于60000的端口
        nmap -P0 -sV -O -v 192.168.30.251    # 组合扫描(不ping、软件版本、内核版本、详细信息)
        
        # 不支持windows的扫描(可用于判断是否是windows)
        nmap -sF 192.168.1.1-111
        nmap -sX 192.168.1.1-111
        nmap -sN 192.168.1.1-111

9  流量切分线路

        # 程序判断进入IP线路,设置服务器路由规则控制返回
        vi /etc/iproute2/rt_tables
        #添加一条策略
        252   bgp2  #注意策略的序号顺序
        ip route add default via 第二个出口上线IP(非默认网关) dev eth1 table bgp2
        ip route add from 本机第二个ip table bgp2
        #查看
        ip route list table 252
        ip rule list
        #成功后将语句添加开机启动

10 snmp

        snmptranslate .1.3.6.1.2.1.1.3.0    # 查看映射关系
            DISMAN-EVENT-MIB::sysUpTimeInstance
        snmpdf -v 1 -c public localhost                            # SNMP监视远程主机的磁盘空间
        snmpnetstat -v 2c -c public -a 192.168.6.53                # SNMP获取指定IP的所有开放端口状态
        snmpwalk -v 2c -c public 10.152.14.117 .1.3.6.1.2.1.1.3.0  # SNMP获取主机启动时间
        # MIB安装(ubuntu)
        # sudo apt-get install snmp-mibs-downloader
        # sudo download-mibs
        snmpwalk -v 2c -c public 10.152.14.117 sysUpTimeInstance   # SNMP通过MIB库获取主机启动时间

标签:shell,1.1,nmap,IP,route,192.168,实例,ssh,Linux
From: https://blog.csdn.net/jiayouzhan2882/article/details/143158980

相关文章

  • SHELL 猜随机数
    猜随机数脚本生成一个100以内的随机数,提示用户猜数字,根据用户的输入,提示用户猜对了,猜小了或猜大了,直至用户猜对脚本结束。#!/bin/bash#RANDOM为系统自带的系统变量,值为0-32767的随机数#使用取余算法将随机数变为1-100的随机数num=$[RANDOM%100+1]#使用read提示用户猜数......
  • Linux的常用命令
    普通用户不具备修改权限命令su-(进入root账号)查询资料是因为$代表普通用户模式,权限不够,可以进入root帐号在建立文件夹进入root帐号,打su-(su-切换到root用户,并转到root用户的家目录下,即改变到了root用户的环境。)命令选项传参command-optionsparameterCommand:命......
  • 【Linux】动静态库(超详细)
     ......
  • 沨鸾的Shell小技巧
    跟着沨鸾学shell,学到最后只会喵喵喵。正经部分:语法规范:变量要加{}括起来。函数最好加个function关键字。头部一定要有释伴(shebang)。记得写注释,要不然也就上帝能看懂你写的什么了。退出时要有返回状态。能用[[]]就别用[]。尽量用printf代替echo使用以提供更好的兼容性。......
  • Linux sshd升级
    1.ubuntussh升级到9.6sshd_update_ubt#定义变量dir="/etc/xinetd.d/"sshd_pid=`ps-ef|grepsshd|awk'$3==1{print$2}'`#结束sshd进程stop_sshd(){ [-z"${sshd_pid}"]||{ kill${sshd_pid} }}#下载telnetapt_telnet(){apt......
  • ShellScript
    StorageSrvShelScript编写添加用户的脚本,存储在/shells/userAdd.sh目录。当有新员工入职时,管理员运行脚本为其创建公司账号。自动分配客户端账号、公司邮箱、samba目录及权限、网站账号等。以userAddlifei的方式运行脚本,lifei为举例的员工姓名前提条件完成了LDAP服务......
  • 100 道 Linux 常见面试题,慢慢读~_linux基础面试题
    1Linux概述1.1什么是LinuxLinux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和Unix的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的Unix工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络......
  • for循环的实例分析
    for循环for(定义或初始化;条件表达式;调整表达式){}while和if的结合体:循环判断执行循环体;有些语言还可以配合to语句三个表达式可以按需要省略,;却不能省略。for(;;)==while(1/True);--程序可读性///:C:for循环嵌套//分析内部作为整体再外部循环,分步乘法,执行顺......
  • 【Linux内核】Cgroup原理和使用
    1.Cgroup简介cgroups(ControlGroups)是Linux内核的一个特性,用于对进程组的物理资源(如CPU、内存、磁盘I/O等)进行细粒度的控制和监控。cgroups可以帮助你限制、记录和隔离资源使用,但它本身并不直接用来“拉高CPU负载”。相反,cgroups通常用于限制进程可以使用的资源量,以防止它们消耗......
  • shell中的IFS变量与词分割
    引入在bash、zsh、csh等等各种shell实现中,都有一个特殊的内置变量IFS(InternalFieldSeparator),意为内部字段分隔符。IFS变量值是一个字符序列,shell会将IFS字符序列中的各个字符视为词分割(wordsplitting)过程中分隔不同token的边界。正文1.什么是词分割以及什么情......