- launch ftp server;stop ftp server(mac)
|
- show hiden files (mac)
|
- show posix path on finder title bar (mac)
|
- Dock waiting time
|
- check active Internet connection,lsof actually lists all file opened
|
- statistics of connection,netstat on mac can’t show pid and process name
|
Nmap
|
- nmcli manage wifi connection (Ubuntu)
|
connect a new wifi
nmcli d wifi connect Milky5g password sdfsfaffadsshow wifi in list
nmcli c showconnect a wifi in the list
nmcli c up Milky5g
- unlock file (mac) chflags nouchg filename
Firewall configuration about Linux:
check all rules
sudo iptables -L --line-numbersdelete some rules.(note INPUT is only one chain in the table)
sudo iptables -D INPUT 10
Add rules:
mac address
sudo iptables -A INPUT -p tcp -m mac --mac-source aa:bb:cc:dd:ee:ff --dport ssh -j ACCEPTip address
sudo iptables -A INPUT -p tcp -s 192.168.3.0/24 --dport ssh -j ACCEPTsave && reload current rules
sudo netfilter-persistent savesudo netfilter-persistent reload
arping 发送特定的 arp 和 icmp 报文(Linux):
如果已知目标的 ip 地址,想要获取对应的 mac 地址,可以利用 arp 协议来发送报文请求,目标 ip 收到报文后会将目标自己的 mac 地址封装在数据包中发送回去。
自带 arping 命令,支持广播报文,可自定义 src.ip,从运行结果来看,先立刻向 ff:ff:ff:ff:ff:ff 广播 arp 报文,-b 的作用是进行持续广播,否则收到回复会转成单播模式。
arping target.ip -s src.ip [-b] -I eth0自行的编译工具(来自 github),支持向特定 mac 地址发送 arp 报文,源 src 地址也可以自定义,也可以 ping mac 地址,
./arping target.ip -S src.ip -s src.mac [-t dis.mac] -i eth0- 上面向 dis.mac 发送 arp 报文,target.mac 不一定等于 dst.mac,dis.mac 缺省值为 ff:ff:ff:ff:ff:ff (mac 广播地址)
- arp 请求报文主要内容:src1.mac src1.ip target.ip target.mac(未知,默认发送00:00:00:00:00:00) dst.mac
arp 回复报文主要内容:src2.mac src2.ip target.ip target.mac src1.mac
程序提供了[-P]选项来模拟发送回复报文,但貌似没有修改报文中的 target.mac 的选项,
已知目标 mac 地址,想要获取对应的 ip 地址,可以利用 icmp 协议(ping 就是采用 icmp)来探测目标 ip
./arping target.mac -S src.ip -s src.mac [-T target.ip] -i eth0报文内容 src.mac src.ip target.ip(未知,默认发255.255.255.255,广播) target.mac 若target收到该 icmp 报文会用自身的 ip 回复一个 icmp 报文,就可以捕获它的 ip 地址
广播 ping,注意 ping 采用 icmp 协议
./arping ff:ff:ff:ff:ff:ff -S src.ip -s src.mac -i eth0
内核参数查看
sysctl -a|grep *内核参数修改例子
sudo sysctl -w net.ipv4.conf.all.arp_ignore=2
路由规则查看 /etc/iproute2/rt_tables
ip rule show添加路由rules例子
ip rule add from ip table $table_name路由表查看
ip route show table $table_name (local/main/default)添加路由到指定的路由表例子
sudo ip route add default via 192.168.3.1 src 192.168.3.34 dev eth0 table $table_namesudo ip route add 192.168.3.0/24 dev eth0 src 192.168.3.34 table $table_name
- 临时更改grub引导下次启动的entry sudo grub-reboot $number
- 关于git的一些常用操作 git statusgit resetgit rm READMEgit rm -f READMEgit loggit log 43f2d5cgit log --name-statusgit checkout 380e228d50822851a9e66129ff02df94228d2406 README
Shell 命令行自定义光标移动快捷键
在
Bash shell
中可以在用户目录下添加.inputrc
文件覆盖原来的快捷键,用bind -p
可以查看当前的快捷键绑定情况。#.inputrc 示例"\el": forward-word#这里 \e 指的是 "escape" ,也就是键盘上的 esc 键, 等价于 alt 键,所以 "alt + l" = "esc + l""\eh": backward-word"\C-h": backward-char# \C 表示 ctrl 键"\C-l": forward-char"\C-o": kill-line"\C-j": next-history"\C-k": previous-history"\C-p": clear-screen"\C-b": backward-delete-char"\C-f": delete-char"\eb": unix-word-rubout"\ef": kill-word在
zsh
中可以直接用bindkey
查看快捷键的绑定,并用bindkey
覆盖默认设置#bindkey 示例,可将这些语句加在 .zshrc 中,或者 .zsh_aliases 中bindkey "^H" backward-char #ctrl + hbindkey "^L" forward-charbindkey "\eh" backward-word #在 Mac 下用 iTerm 可以自定义 option 键bindkey "\el" forward-wordbindkey "^F" delete-char-or-listbindkey "^B" backward-delete-charbindkey "\eb" backward-kill-wordbindkey "\ef" kill-wordbindkey "^O" kill-linebindkey "^U" backward-kill-line
- 在 Ubuntu 中保持特定软件包版本不更新 sudo dpkg --get-selections * > selections.txt#将当前所有软件包版本信息重定向到一个 txt 文件中,将不需要更新的软件包的状态由 install 改成 holdsudo dpkg --get-selections < selection.txt#将修改后的文件送给包管理器更新
- 屏蔽服务程序开机启动 sudo systemctl mask plymouth-quit-wait.service
- 解除屏蔽 sudo systemctl unmask plymouth-quit-wait.service
- 列出开始时间 systemd-analyze blame
- grub 的配置文件 /etc/default/grub
- 查看对外 ip curl ip.gs
- http 上传 curl -i -F file=@filename ip:port
Ubuntu 下键盘重映射,在 tty 中也有效
- 交换
esc
和caps lock
: 在/etc/default/keyboard
中加入XKBOPTIONS="caps:swapescape"
ssh reverse tunnel
- Build ssh tunnel ssh -qnfNT -g -R 6666:localhost:22 -p 12345 user@server_ip```bash- Use autossh to build tunnel when client startup(reboot),just write command below in /etc/rc.local script```bashsu -s /bin/sh username -c "autossh -qnfNT -i ~/.ssh/id_rsa -g -R 6666:localhost:22 -p 12345 user@server_ip"
Anaconda & pip
|