ubuntu下的指令:
系统部份
查看当前在线用户 w | who
系统用户 users
向其它在线用户发消息:先w, 再write ashley tty1
telnet localhost 11211 【host port之间无冒号】
web下载文件:wget http://filename
ubuntu下添加新用户,最好用:adduser user_name,如果需要修改,如下加入sudo组:
sudo usermod -a -G sudo <username>
查看环境变量:~$ env
网络部份:
查看网络接口:ifconfig
查看路由:route -n
查看网络端口:netstat -tupn
重启网络:sudo service networking restart
跟踪路由节点:sudo traceroute -w 1 -n -T www.baidu.com
查主机名:host [-a] hostname
包截取黑客指令:tcpdump[未学习]
文件管理:
文件传输SCP
文件夹传输【scp -r [srcusr@srchost:/path/folder] [destusr@desthost:/path/folder]】:当src或dest是本机时,可省去[usr@host:]
例:scp -r [email protected]:/root/test_folder /mnt/shared 【下载文件夹到本地】
scp /mnt/shared/test_scp [email protected]:/root/test_scp 【上传文件到服务器】
Linux重定向操作符 功能描述
> 将命令输出写入文件或设备,而不是命令提示符或句柄
< 从文件而不是从键盘或句柄读入命令输入
>> 将命令输出添加到文件末尾而不删除文件中已有的信息
>& 将一个句柄的输出写入到另一个句柄的输入中
<& 从一个句柄读取输入并将其写入到另一个句柄输出中
安装包管理<debian系统>
安装软件命令: apt-get install softname1 softname2 softname3……
卸载软件命令: apt-get remove softname1 softname2 softname3……
卸载并清除配置命令: apt-get remove --purge softname1
搜索Deb包:dpkg -l <packgename>
报告指定包的状态信息:dpkg -s <packgename> OR dpkg-query -s <packgename>
显示一个包安装到系统里面的文件目录信息:dpkg -L <packgename> OR dpkg-query -L <packgename>
远程访问
使用SSH不再输入密码的方式步骤
a.ssh-keygen 生成RSA密钥对
b.ssh-copy-id -i ~/.ssh/ashley.pub usr@remoteIp [在远端的.ssh/authorized_keys可以看到上传的公钥]
c.OK,try it:ssh usr@remoteIp
如果失效,仍需要密码,请检查远端机~/.ssh/authorized_keys权限 chmod 700 .ssh chmod 644 authorized_keys 如果上面仍然失效,打开debug模式:ssh -v user@remoteIp,我本人是发现根本没有用我的ashley密钥去尝试过,当命令回id_rsa时OK。 或者手动添加私钥: ssh-agent bash ssh-add ~/.ssh/ahsley
或者你可以:
ssh usr@remoteIp -i ~/.ssh/ashley
使用SSH让远端机器运行本地脚本
ssh usr@remoteIp "bash -s" < test_script
使用SSH执行远端脚本
ssh user@remoteIp "touch test.testfile"
防火墙之iptables
规则(rule)是有顺序的。(详细资料)
iptables -L -n #列出filter table 三条链的规则 sudo iptables-save #列出完整的防火墙规则 iptables -F #清除本机防火墙 (filter) 的所有规则 iptables -D INPUT 1 #清除INPUT链第一条规则
ex:以下加入两个规则:1)允许本机访问端口8092. 2)不允许任何tcp连接访问8092.
那么1号规则先执行,这两条的意义就是:8092只被本机访问。
iptables -A INPUT -s 127.0.0.1/32 -p tcp -m tcp --dport 8092 -j ACCEPT iptables -A INPUT -p tcp -m tcp --dport 8092 -j REJECT
但是,一旦服务器被重启,这样规则又丢了,要保存下来需要做:
sudo iptables-save > /home/ashley/iptables.rules sudo vi /etc/network/interfaces pre-up iptables-restore < /home/ashley/iptables.rules #加上这句,开机自动加载规则 post-down iptables-save > /home/ashley/iptables.rules #加上这句,当前规则将在关闭服务时保存