常用的Linux命令和技巧 ,正向反向端口转发(工作中总结)

1 端口转发

ssh -L{PC端口号}:localhost:{数据库端端口号} root@{服务器IP地址}

工作中遇到如下需求,

服务器1  服务器2  windows开发机

服务器1和服务器2互相之间不能直接访问,但是windows可以访问服务器1和服务器2

如果我们需要从服务器1访问服务器2,我们需要建立端口转发,将windows作为中介,数据流大致是这样的:

服务器1=>windows机=>服务器2

在windows下输入:

ssh -L{PC端口号}:localhost:{服务器2端口号} root@{服务器2IP地址}

ssh -L 6483:localhost:8380 Remote2

将本地6483绑定到服务器2的8380

ssh -R{服务器1端口号}:localhost:{PC端口号} root@{服务器1IP地址}

ssh -R 6482:localhost:6483 Remote1

将服务器1的6482绑定到本地的6483

这样 服务器1就可以和服务器2通讯

服务器1:

nc 127.0.0.1 6482

服务器2:

nc -l 8380

可以尝试从服务器1给服务器2发送信息

-L : 所谓“正向代理”就是在本地启动端口,把本地端口数据转发到远端。

-R : 所谓“反向代理”就是让远端启动端口,把远端端口数据转发到本地。

2 在Linux控制终端 到达行首和行位

Crtl+a    Crtl+e

3 ll 命令

键入ll 而不是 ls -al

4 执行以前执行的命令

假如要查找执行过的上一个包含/tmp 的命令, 可以按 Ctrl+r,并且键入/tmp

假如要显示所有执行过的包含/tmp的命令, 可以使用正则表达式 history | grep "/tmp"

5 yes命令

如果想对一个命令中的所有问题都回答yes, 可以使用yes命令。例如:

yes | yum install curl  这个命令会对yum安装过程中所有的问题都回答yes。

如果想回答no 键入: yes no | yum install curl

6 查找是谁占用了你的端口

netstat -tulpn | grep 8080

你可以执行下面的命令来找到更多的信息:

ps aux | grep 33413

7 实时读取日志文件

下面命令将只显示指定日志文件中包含ERROR字符的新行

tail -f /var/log/my.log | grep ERROR

8 进程排序

下面的命令是按照CPU的使用率排序,显示最高的3个进程:

ps aux --sort=-pcpu | head -n 4

下面的命令是按照内存的使用率排序,显示最高的3个进程:

ps aux --sort=-rss | head -n 4

9 每隔XX秒执行一次命令

watch -n 1 date

每隔一秒打印一次date命令的输出

10 安静模式

很多标准命令都有安静模式,在创建bash脚本的时候非常有用,大多数情况,只需要在命令后面添加一个 -q 或者 -s 详细信息可以看 --help 或者man 输出的内容。

输出不可避免,但是也必须忽略输出,可以将输出定向到/dev/null

./my.sh > /dev/null

11 查找根目录下所有log文件里含有"Login"字符串的命令

find / -name "*.log"|xargs grep -i login

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值