alamise

Website URL:

centos shell get ip mac address

--------------------------------mac------------------------

cat /sys/class/net/eth*/address

 

-------------------------mac-----------------------------

/sbin/ifconfig \
   | grep 'eth0' \
   | tr -s ' ' \
   | cut -d ' ' -f5

------------------ip--------------------------
/sbin/ifconfig \
   | grep '\<inet\>' \
   | sed -n '1p' \
   | tr -s ' ' \
   | cut -d ' ' -f3 \
   | cut -d ':' -f2
--------------------------mac----------------
ifconfig | grep HWaddr | awk -F" " '{print $5}'

------------------------ip-------------------------
ifconfig eth0 | grep "inet addr" | awk -F: '{print $2}' | awk '{print $1}'

    linux 网络操作相关命令

    #/bin/sh
    
    #查看http请求的header
    tcpdump -s 1024 -l -A -n host 192.168.9.56
    tcpdump -s 1024 -l -A src 192.168.9.56 or dst 192.168.9.56
    sudo tcpdump -A -s 1492 dst port 80
    
    #本地网络中IP地址为192.168.0.5的主机现在与外界通信的情况
    sudo tcpdump -i eth0 src host 192.168.0.5
    
    #查看网卡eth0的http请求的tcp包
    tcpdump -i eth0 port http
    tcpdump -i eth0 port http or port smtp or port imap or port pop3 -l -A | egrep -i 'pass=|pwd=|log=|login=|user=|username=|pw=|passw=|passwd=|password=|pass:|user:|userna me:|password:|login:|pass |user '
    
    
    #查看tcp,upd,icmp非ssh的包
    tcpdump -n -v tcp or udp or icmp and not port 22
    
    
    #查看http请求的request 包
    sudo tcpdump -i eth0 port 80 -w -
    
    
    #过滤http响应的get host头信息
    sudo tcpdump -i en1 -n -s 0 -w - | grep -a -o -E "GET \/.*|Host\: .*"
    
    
    #DNS查询请求响应包
    sudo tcpdump -i en0 'udp port 53'
    
    #nmap -sP指定使用Ping echo 进行扫描 /24查看目的网络有多少主机处于运行状态
    nmap -sP 192.168.0.1
    nmap -sP 192.168.0.0/24
    nmap -O www.baidu.com
    
    #Netstat主要用于Linux/Unix主机察看自身的网络状况,如开启的端口、在为哪些用户服务以及服务的状态
    netstat -a
    netstat -nlp
    
    #netcat扫描机器开放的端口
    nc -z -v -n 172.31.100.7 21-25
    
    #netcat 命令会连接开放端口21并且打印运行在这个端口上服务的banner信息。
    nc -v 172.31.100.7 21
    
    #输出网络的路由表
    route
    
    #显示结果包括服务器已经运行了多长时间,有多少登陆用户和对服务器性能的总体评估(load average)。
    uptime
    
    #监控 eth1 的网卡的流量 
    iftop -i eth1 
    #以位元组(bytes 即字节)为单位显示流量(预设是位元 bits): 
    iftop -B 
    #直接显示 IP, 不进行DNS 反解: 
    iftop -n 
    #直接显示连接埠编号, 不显示服务名称: 
    iftop -N 
    #显示某个网段进出封包流量 
    iftop -F 192.168.1.0/24 or 192.168.1.0/255.255.255.0 
    
    
    #网络流量实时监控工具之nload,查看网卡eth0的流量
    nload -n eth0
    
    #查看各个网卡的流量
    nload -h
    
    #IPTraf是一个网络监控工具,功能比nload更强大,可以监控所有的流量,IP流量,按协议分的流量,还可以设置过滤器
    iptraf
    
    
    #查看网络接口当前配置与接口命名:
    ifconfig
    #打开(up)或关闭(down)适配器
    ifconfig <网络名> <up|down>
    #为适配器分配IP地址:
    ifconfig <网络名> <ip地址>
    #为适配器分配第二个IP地址:
    ifconfig <网络名:实例数> <ip地址>
    
    #显示某个网络适配器的驱动信息,适用于查询软件兼容性的情况:
    ethtool -i eth0
    #显示网络数据:
    ethtool -S
    #设置适配器连接速度(Mbps)
    ethtool speed <10|100|1000>
    
    
    #iwconfig 查基本的Wi-Fi网络设置,如SSID、channel和加密等细节。此外还可以修改一些高级设置,包括接收敏感度,RTS/CTS,碎片,以及重试数
    #显示当前无线设置,包括接口名称:
    iwconfig
    #设置ESSID(扩展服务设置识别器)或网络名:
    iwconfig <接口名> essid <网络名>
    
    
    #wget
    wget -S --spider http://osswin.sourceforge.net/ 2>&1 | grep Mod
    
    #查看mac地址
    cat /sys/class/net/*/address
    
    #查看eth0的ip
    ifconfig eth0 | awk '/inet addr/ {split ($2,A,":"); print A[2]}'
    
    #curl 查看页面对应的domail name
    curl -s http://en.m.wikipedia.org/wiki/List_of_Internet_top-level_domains | sed -n '/<tr valign="top">/{s/<[^>]*>//g;p}'
    
    #talnet
    telnet localhost 6666
    
    #查看所有的网络接口
    awk '{print $1}' /proc/net/dev|grep :|sed "s/:.*//g"
    
    
    #查看DNS server版本好
    nslookup -q=txt -class=CHAOS version.bind NS.PHX5.NEARLYFREESPEECH.NET
    

      巧用组策略限制访问网站

      大家如果想禁止公司的员工或者家长禁止孩子访问某些网站,可以用组策略来实现,不用再去花费金钱去购买网络监控软件或者防火墙等产品。

        组策略是微软开发的非常实用的网络管理控制软件,在每台电脑上安装操作系统是就已经安装了,无需另外安装,只需简单的配置就可以了。方法如下:

      点开始--》运行 输入 gpedit.msc如下图,点 确定

      巧用组策略限制访问网站

      确定后见下图

      巧用组策略限制访问网站

      点开左侧栏的计算机配置下的--》 Windows设置 --》安全设置 --》IP安全策略,在本地计算如下图

      巧用组策略限制访问网站

      在IP安全策略,在本地计算机处 右键,选创建IP安全策略---》见下图

      巧用组策略限制访问网站

      点下一步,起个名字,比如我们限制访问新浪网,只是打个比方,这里可以输入你要限制访问的网站名。见下图

      巧用组策略限制访问网站

      描述可以不写,点击下一步,默认的勾选上,见下图

      巧用组策略限制访问网站

      一路默认,点完成就可以,见下图

      巧用组策略限制访问网站

      见下图右侧栏

      巧用组策略限制访问网站

      双击右侧 限制新浪网,见下图

      巧用组策略限制访问网站

      点击添加,见下图

      巧用组策略限制访问网站

      选下一步,见下图

      巧用组策略限制访问网站

      默认,点下一步,见下图

      巧用组策略限制访问网站

      选所有网络连接,点下一步

      巧用组策略限制访问网站

      点击添加,见下图

      巧用组策略限制访问网站

      输入名称,限制访问新浪网,点击添加

      巧用组策略限制访问网站

      点下一步

      巧用组策略限制访问网站

      输入描述,点下一步,源地址处选任何IP地址,见下图

      巧用组策略限制访问网站

      点下一步,目标地址,选一个特定的DNS名称,主机名,输入:www.sina.com.cn见下图

      巧用组策略限制访问网站

      点下一步,可以看见解析出好多新浪网的ip地址,选是,见下图

      巧用组策略限制访问网站

      巧用组策略限制访问网站

      点下一步,完成见下图

      巧用组策略限制访问网站

      见下图

      巧用组策略限制访问网站

      点确定,返回到如下图

      巧用组策略限制访问网站

      选中限制访问新浪网,点下一步,见下图

      巧用组策略限制访问网站

      选 限制,点下一步,完成。

      巧用组策略限制访问网站

      确定,应用后,如下图

      巧用组策略限制访问网站

      可以看见右侧栏有限制访问新浪网,先选中,然后右键指派就可以了,策略已指派处显示是,就ok了

      至此都完成了,要使组策略生效,还要重启计算机。重启计算机后大约过一段时间,你上新浪网就打不开网页了

      多说一句,windows组策略的功能非常强大,可以限制使用本地磁盘,光驱,优盘等,对于公司可以配合域控制器,用域管理,不用每台都设置了,只需要在域控制器上设置组策略就可以了,以后篇章再介绍如何组建域环境网络。如有疑问,可以和我QQ交流。我的QQ:476049740,加时注明新浪博客。

       



       







       



       



       



       







       







       










        在组策略禁止某应用程序运行/指定某程序运行

        域控制器在精髓在于灵活的管理我们我们的局域网,哪么是否也可以禁止一些应应用程序的运行呢?

        域控制器是Active Directory域的指挥机构,出于安全性考虑,可以编辑组策略使得登录到域控制器(DC)的用户只能运行指定的程序,操作步骤如下所述:

        第1步,打开“组策略编辑器”窗口,在左窗格中依次展开“用户配置”→“管理模板”目录,并选中“系统”选项。然后在右窗格中双击“只运行许可的Windows应用程序”选项,(当然在此还有另外一个“不要指定的应该用程序运行”大家在这里可以灵活地选择,具体视你的需要)打开“只运行许可的Windows应用程序 属性”对话框。选中“已启用”单选框,并单击“显示”按钮,如图所示。

        PPStream.exe

        PPSKernel.exe

        组策略禁止程序运行

        第2步,在打开的“显示内容”对话框中单击“添加”按钮,打开“添加项目”对话框。然后在“输入要添加的项目”编辑框中输入具体程序的可单击文件名称(如QQ.exe),并依次单击“确定”→“确定”按钮。返回“只运行许可的Windows应用程序 属性”对话框,再次单击“确定”使设置生效,如图所示。

        gpedit 禁止程序运行

        写到这里可能有朋友就了解,如果我的QQ改命为QQ2不就可以再次运行了嘛?YES SURE!这样就用这一招就不行了,但是有多少朋友知道可以这样搞呢?你不也是知道我是用此方法限制才知道的,不是吗?当然我们还可以用组策略把它哈希掉

         

         

         

          bat backup Restoring Fences 2.1 rules after OS reload

          Vista/7: C:\Users\USERNAME\AppData\Roaming\Stardock\Fences\Backups

          You will need to replace USERNAME with your user account name on your PC. Alternatively, you can import the following registry key into the new machine's registry:

          HKEY_CURRENT_USER\Software\Stardock\Fences

          Please let me know whether this resolves your problem or if you have any additional questions.

           

          fences.BAT

           

          Reg export HKEY_CURRENT_USER\Software\Stardock\Fences C:\fences.reg /y

           

           

           

            qnap screen rsync

            • May 16, 2013
            • Published in Qnap

             

             

            screen -S rsync

             

            ---screen command  

                         nohup rsync -avzP --bwlimit=200 --password-file=/root/rsyncpass rsync://home@ipaddress/home  /share/rsync &

             

            quit screen

                 Ctrl-a d 断开所有 screen 终端,返回 screen 执行前状态,但 screen 内所有终端的任务都在执行

            检查 screen

               screen -ls

            There is a screen on:

                    24646.rsync     (Detached)

            1 Socket in /tmp/screens/S-admin.

             

            ok 可以 退出 putty

            ---------------------------------------------------------------------------------------------------------------------------------

            kill

            screen -S  24646 -X quit

             

            ----------------------------------------------------------------------------------------------

            运行:
            screen

            Ctrl-a S 新建水平分割窗口
            Ctrl-a Tab 切换窗口
            Ctrl-a :screen bash 新建 screen 终端,并运行 bash
            Ctrl-a :quit 退出 screen,将关闭所有 screen 终端,结束其中所有任务



            screen 常用命令,
            代码:Ctrl-a c 新建 bash screen 终端
            Ctrl-a " 列出
            Ctrl-a A 重命名
            Ctrl-a n 在当前窗口中切换到下一个 screen 终端
            Ctrl-a p 在当前窗口中切换到上一个 screen 终端 

            Ctrl-a d 断开所有 screen 终端,返回 screen 执行前状态,但 screen 内所有终端的任务都在执行
            screen -ls 列出当前用户的所有 screen 实例,包括联接和断开的
            screen -R <pid> 重新联接到已断开的 screen 实例,如果有多个已断开的 screen 实例,则用 <pid> 区分

            Ctrl-a S 新建水平分割窗口
            Ctrl-a Tab 切换窗口
            Ctrl-a X 关闭当前窗口
            Ctrl-a + 扩大当前窗口,默认增加3行
            Ctrl-a - 缩小当前窗口,默认减小3行

            Ctrl-a :screen <command> 新建 screen 终端,并运行命令<command>
            Ctrl-a :resize <height> 改变当前窗口高度为<height>
            Ctrl-a :quit 退出 screen,将关闭所有 screen 终端,结束其中所有任务

            Ctrl-a <Esc> 进入选择模式
            <PageUp> 或 Ctrl-u 光标上移一页
            <PageDown> 或 Ctrl-d 光标下移一页 
            <Left> 或 h 光标左移一格
            <Down> 或 j 光标下移一行
            <Up> 或 k 光标上移一行
            <Right> 或 l 光标右移一格
            <Space> 选择开始,选择结束
            <Esc> 退出选择模式
            Ctrl-a ] 粘贴选择的内容


            [screen:]

            * 用screen -dmS session_name 来建立一个处于断开模式下的会话(并指定其会话名)。

            * 用快捷键CTRL-a d 来暂时断开当前会话。

            * 用screen -r session_name 来重新连接指定会话。

            screen -x session_name 连接一个非断开模式的会话

            * 用screen -list 来列出所有会话。



            C-a ?   显示所有键绑定信息

            C-a w   显示所有窗口列表



            C-a K ==exit    杀掉当前窗口 



            C-a c      创建一个新的运行shell的窗口并切换到该窗口

            C-a C-a    切换到之前显示的窗口

            C-a n      切换到下一个窗口

            C-a p      切换到前一个窗口

            C-a 0..9   切换到窗口0..9

            C-a a      发送 C-a到当前窗口

            C-a [      进入拷贝/回滚模式



            -list|-ls       列出现有screen会话,格式为pid.tty.host

            -wipe [match]   同-list,但删掉那些无法连接的会话

            -d|-D [pid.tty.host]    不开启新的screen会话,而是断开其他正在运行的screen会话

            -r sessionowner/ [pid.tty.host] 重新连接一个断开的会话。多用户模式下连接到其他用户screen会话需要

            指定sessionowner,需要setuid-root权限

            -h num  指定历史回滚缓冲区大小为num行

            Unix中的screen是个多元化多功能的全屏窗口管理器,习惯了你会觉得它比windows的任务栏好用多了。
            下面是.screenrc文件,仅供参考。
            #
            # ~/.screenrc
            #
            # 启动时不显示欢迎屏幕
            startup_message off
            # 定义screen的功能键为Ctrl-Z。向终端输入Ctrl-Z时应按 Ctrl-Z z。
            escape ^Zz
            # 屏幕缓冲区 1024 行。
            defscrollback 1024
            # 在最下一行显示窗口列表和时钟
            hardstatus on
            hardstatus alwayslastline
            hardstatus string "%{.bW}%-w%{.rY}%n %t%{-}%+w %=%{..G} %H(%l) %{..Y} %Y/%m/%d %c:%s "
            # 关闭错误提示
            vbell off
            # 按 Ctrl-Z w 或 Ctrl-Z Ctrl-W 显示窗口列表
            bind w windowlist -b
            bind ^w windowlist -b
            常用快捷键
            注:这些快捷键都需要在按完 escape 键之后使用。默认的escape键是 Ctrl-A,上面贴出的 .screenrc 中将其改成了 Ctrl-Z。例如 d,实际操作时应当按 Ctrl-Z d。

            快捷键功能
            d 中断当前会话,下次可以用 screen -r 命令恢复
            c 开新窗口
            0-9数字 在窗口0-窗口9之间迅速切换
            n 下一个窗口
            p 上一个窗口
            S 分割屏幕
            TAB 在分割的屏幕之间切换
            X 关闭分割出的屏幕
            [ 进入复制模式,用hjkl移动光标,空格选中开始点,再次按空格选择结束点,进行复制
            ] 粘贴
            ? 帮助
            : 进入screen的命令行
            另外要提到的几个常用技巧:
            重复 escape 键可以在当前窗口与上一个窗口之间迅速切换。例如从窗口1按^Z3切换到窗口3,之后可以按^Z^Z在窗口1和3之间切换。
            窗口分割的用法:首先按^ZS(S要大写)进行分割,然后用^Z<TAB>切换到分割出的新屏幕,再用^Z<数字>在新屏幕内切换窗口。结束分割可以用^ZX。
            翻页:用了screen之后就不能用平常的 Shift-PageUp 和 Shift-PageDown 来翻页。可以按 ^Z[ 进入复制模式,即可利用与 vi 相同的快捷键来翻页查看历史。最后按Esc取消复制模式。
            关于 escape 键的选择:
            默认的Ctrl-A与vi的增1功能冲突。如果你不幸习惯了Ctrl-A,那么当你在没有screen的环境下使用vim时,你会在不经意之间按下Ctrl-A而改变附近的数字。因此最好改成别的键。


            常用的screen快捷键都在左手,因此escape应当放在键盘的左面三列。Ctrl-Q和Ctrl-S被终端使用无法绑定,Ctrl-` screen不支持,Ctrl-W与vim的切换窗口命令冲突,Ctrl-D与vim的翻页冲突, Ctrl-X与vim的减1功能冲突,Ctrl-E与vim的滚屏冲突,Ctrl-C为很常用的中止程序。因此只能用Ctrl-Z了。Ctrl-Z用于暂停程序,不常用,可以将其设置为screen的escape键。需要暂停程序时按 Ctrl-Z z 即可.

             

             

              qnap .profile

              • May 16, 2013
              • Published in Qnap

              /root/.profile

               

              To make this setting permanent, you can add this to your .profile, before the 'reset' line

              export PS1='[\w] # '
              export TERMINFO='/usr/share/terminfo/'
              reset

              This assumes that you are using the default QNAP shell of /bin/sh. If you are using /bin/bash, put the export command in .bashrc.

               

              Troubleshooting

              • If the .profile gets overwritten at reboot (which is the case with firmware 3.8.1) a workaround could be to create a .profile_backup in /share/HDA_DATA/ and overwrite the .profile in autorun.sh with:
              cp /share/HDA_DATA/.profile_backup /root/.profile

                # screen /var/run/utmp: No such file or directory Cannot find termcap entry for '...'

                • May 16, 2013
                • Published in Qnap

                QNAP screen command broken-ness

                On the QNAP per default the screen command is not configured properly. When running screen the following errors are output.

                # screen
                /var/run/utmp: No such file or directory
                Cannot find termcap entry for '...'

                (Where ... is a placeholder for xterm-color, xterm-256color or any file which is not available on the QNAP.)

                If you cd to /var/run/ you will notice that the file utmp is indeed missing. To solve the first error it suffices to create an empty file.

                # touch /var/run/utmp

                The second error appears because the termcap to which the environment variable TERM points, is missing. You can verify this with checking your TERM environment variable:

                # export | grep xterm

                You will notice the TERM variable is defined and as such pointing to a file, which is not there. If you browse to the following directory you can verify that:

                # ls /usr/share/terminfo/x/

                Per default there are only two entries: xterm and xterm-xfree86. xterm-xfree86 is the successor of the original xterm-color. Screen is searching for a specific xterm-file which is configured on the terminal from which you are controlling your QNAP. If you use a MAC for example, the default terminal preferences declare the terminal as xterm-256color. This means that when you connect with your MAC to the QNAP, it will inform the QNAP of the declared terminal and as such screen on the QNAP fails to work, if it cannot find the requested xterm-file.


                Knowing this gives you a few options for solving this:

                • Changing the terminal preferences to use xterm.
                • Make sure the TERM environment variable on your QNAP is pointing to xterm-xfree86.
                • Create one or more symbolic links from the requested xterm file to xterm-xfree86.


                The last solution with the symbolic links will be a general solution that will probably work in most of the cases. Changing a file name would be also an option but gives less flexibility. Create one or more symbolic links from the missing file (xterm-256color, xterm-color or ...) to its successor xterm-xfree86.

                But...

                Once you have modified your QNAP and restarted it, you may find all settings are lost. So how to make this persistent?

                See Automatic startup ... when system boots for tips on keeping settings and software persistent.

                Depending on your model, mount the ramblock (Note that this is device dependent, check the link above. For example for the TS-459 and TS-469 it is /dev/sdx6):

                mount -t ext2 /dev/sdx6 /tmp/config
                vi /tmp/config/autorun.sh

                Add the following lines:

                #!/bin/sh
                # start a single script
                /share/MD0_DATA/custom/autorunmaster.sh
                # finish

                Ensure that /tmp/config/autorun.sh is executable:

                chmod +x /tmp/config/autorun.sh

                Then unmount with:

                umount /tmp/config

                Now create a directory:

                mkdir /share/MD0_DATA/custom/

                Edit the file autorunmaster.sh

                vi /share/MD0_DATA/custom/autorunmaster.sh

                Add or enter the following:

                #!/bin/sh
                # This is the autorunmaster file which is executed from
                # mounted device /dev/sdx6/ with file autorun.sh
                # Enter below your scripts and comments
                #
                # Fix broken screen command which has missing file
                # /var/run/utmp and may have missing environment
                # variables for TERM, as such pointing to a non-existing
                # xterm file like xterm-color.
                touch /var/run/utmp
                ln -s /usr/share/terminfo/x/xterm-xfree86 /usr/share/terminfo/x/xterm-256color
                ln -s /usr/share/terminfo/x/xterm-xfree86 /usr/share/terminfo/x/xterm-color

                And make sure that autorunmaster.sh is executable:

                chmod +x /share/MD0_DATA/custom/autorunmaster.sh

                Troubleshooting

                • Message 'Aborted because of window size change' appears. Disable remote-controlled terminal resizing, which is in Putty in Terminal -> Features
                • If /share/MD0_DATA does not exist you may need to use  /share/HDA_DATA instead depending on your disk configuration

                Alternative solution

                If for some reason the above mentioned does not work, the following might. Run the screen command with an exported variable:

                # TERMINFO='/usr/share/terminfo/' screen

                or

                # export TERMINFO='/usr/share/terminfo/'
                # screen

                To make this setting permanent, you can add this to your .profile, before the 'reset' line

                export PS1='[\w] # '
                export TERMINFO='/usr/share/terminfo/'
                reset

                This assumes that you are using the default QNAP shell of /bin/sh. If you are using /bin/bash, put the export command in .bashrc.

                Troubleshooting

                • If the .profile gets overwritten at reboot (which is the case with firmware 3.8.1) a workaround could be to create a .profile_backup in /share/HDA_DATA/ and overwrite the .profile in autorun.sh with:
                cp /share/HDA_DATA/.profile_backup /root/.profile
                

                 

                  Subscribe to this RSS feed
                  Notice: Undefined offset: 1 in /var/www/vhosts/shan.info/httpdocs/templates/gk_publisher/html/pagination.php on line 18

                  Notice: Undefined offset: 1 in /var/www/vhosts/shan.info/httpdocs/templates/gk_publisher/html/pagination.php on line 34

                  Warning: count(): Parameter must be an array or an object that implements Countable in /var/www/vhosts/shan.info/httpdocs/templates/gk_publisher/html/com_k2/templates/default/user.php on line 145

                  Notice: Undefined offset: 1 in /var/www/vhosts/shan.info/httpdocs/templates/gk_publisher/html/pagination.php on line 18

                  Notice: Undefined offset: 1 in /var/www/vhosts/shan.info/httpdocs/templates/gk_publisher/html/pagination.php on line 34