Linux常用命令
# 一.推荐文章、博客
# 二.curl 命令
在 Linux 中 curl 是一个利用 URL 规则在命令行下工作的文件传输工具,可以说是一款很强大的 http 命令行工具。它支持文件的上传和下载,是综合传输工具,但按传统,习惯称 url 为下载工具。不过,由于安装 linux 的时候很多时候是没有安装桌面的,也意味着没有浏览器,因此这个方法也经常用于测试一台服务器是否可以到达一个网站
语法: curl [option][url]
常见参数
-A/--user-agent <string> 设置用户代理发送给服务器 -b/--cookie <name=string/file> cookie字符串或文件读取位置 -c/--cookie-jar <file> 操作结束后把cookie写入到这个文件中 -C/--continue-at <offset> 断点续转 -D/--dump-header <file> 把header信息写入到该文件中 -e/--referer 来源网址 -f/--fail 连接失败时不显示http错误 -o/--output 把输出写到该文件中 -O/--remote-name 把输出写到该文件中,保留远程文件的文件名 -r/--range <range> 检索来自HTTP/1.1或FTP服务器字节范围 -s/--silent 静音模式。不输出任何东西 -T/--upload-file <file> 上传文件 -u/--user <user[:password]> 设置服务器的用户和密码 -w/--write-out [format] 什么输出完成后 -x/--proxy <host[:port]> 在给定的端口上使用HTTP代理 -#/--progress-bar 进度条显示当前的传送状态
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16基本用法:
curl http://www.baidu.com //执行后,www.linux.com 的html就会显示在屏幕上了
1保存访问的网页
- 使用 linux 的重定向功能保存:
curl http://www.linux.com >> baidu.html
- 使用 curl 的内置 option:-o(小写)保存网页:curl -o baidu.html http://www.baidu.com
- 使用 linux 的重定向功能保存:
# 三.scp 上传/下载
语法:
scp [可选参数] file_source file_target
参数说明:
-1: 强制scp命令使用协议ssh1 -2: 强制scp命令使用协议ssh2 -4: 强制scp命令只使用IPv4寻址 -6: 强制scp命令只使用IPv6寻址 -B: 使用批处理模式(传输过程中不询问传输口令或短语) -C: 允许压缩。(将-C标志传递给ssh,从而打开压缩功能) -p:保留原文件的修改时间,访问时间和访问权限。 -q: 不显示传输进度条。 -r: 递归复制整个目录。 -v:详细方式显示输出。scp和ssh(1)会显示出整个过程的调试信息。这些信息用于调试连接,验证和配置问题。 -c cipher: 以cipher将数据传输进行加密,这个选项将直接传递给ssh。 -F ssh_config: 指定一个替代的ssh配置文件,此参数直接传递给ssh。 -i identity_file: 从指定文件中读取传输时使用的密钥文件,此参数直接传递给ssh。 -l limit: 限定用户所能使用的带宽,以Kbit/s为单位。 -o ssh_option: 如果习惯于使用ssh_config(5)中的参数传递方式, -P port:注意是大写的P, port是指定数据传输用到的端口号 -S program: 指定加密传输时所使用的程序。此程序必须能够理解ssh(1)的选项。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17使用:
打开本地的 Terminal 终端,之后会输入密码验证登录
scp -r ./docs/.vuepress/dist root@ssscode.com:/usr/local/app/vuepress-blog/
端口:
如果远程服务器防火墙有为 scp 命令设置了指定的端口,我们需要使用 -P 参数来设置命令的端口号,命令格式如下:
scp 命令使用端口号 8000
scp -P 8000 remote@www.baidu.com:/usr/local/xx
# 四.防火墙
详情可以参考该博客这篇文章 centos7 防火墙firewalld设置与管理
- 显示 tcp,udp 的端口和进程等相关情况:
netstat -tunlp | grep
端口号
# 防火墙 firewall
1.查看已经开放的端口:firewall-cmd --list-ports
2.开放端口:firewall-cmd --zone=public --add-port=80/tcp --permanent
3.重启防火墙:systemctl reload firewalld
4.查看 firewalld 状态:systemctl status firewalld
5.开启防火墙: systemctl start firewalld
# 防火墙 iptables
1.查看已经开放的端口:
iptables - L - n;
2.开放端口:
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A OUTPUT -p tcp --sport 22 -j ACCEPT
//-A 参数就看成是添加一条 INPUT 的规则
//-p 指定是什么协议 我们常用的tcp 协议,当然也有udp 例如53端口的DNS
//--dport 目标端口,数据从外部进入服务器
//--sport 数据源端口,数据从服务器出去
//-j 就是指定是 ACCEPT 接收 或者 DROP 不接收
2
3
4
5
6
7
8
3.保存:
service iptables save
4.删除规则:
iptables -L -n --line-number //获取规则的编号 num
iptables -D INPUT 2 //删除INPUT链编号为2的规则
2
5.禁止某个 IP 访问:
iptables -A INPUT -p tcp -s 192.168.1.2 -j DROP
//-A 添加新的规则
//-s 来源的意思
//ip:192.168.1.2
2
3
4
6.关闭所有端口 INPUT FORWARD OUTPUT:
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT DROP
2
3