通过Redsocks将Kali Linux的流量进行代理

Redsocks 是一个代理重定向工具,可以将流量通过 SOCKS 或 HTTP 代理传递。你可以使用它在 Kali Linux 中将流量通过代理服务器。以下是设置和使用 Redsocks 的步骤: 1. 安装 Redsocks Redsocks 通常在 Kali Linux 上不可用,需要手动安装。首先,确保你有 git 和 build-essential 工具: sudo apt-get update
sudo apt-get install git build-essential
  1 2   然后,从 GitHub 上克隆 Redsocks 源代码并编译: git clone https://github.com/darkk/redsocks.git
cd redsocks
make
sudo make install
  1 2 3 4   2. 配置 Redsocks Redsocks 的配置文件默认位于 /etc/redsocks.conf。你可以创建或编辑这个配置文件。 sudo nano /etc/redsocks.conf
  1   以下是一个典型的配置示例: base {
     log_debug = on;
     log_info = on;
     log = “file:/var/log/redsocks.log”;
     daemon = off;
     redirector = iptables;
}

redsocks {
     local_ip = 127.0.0.1;
     local_port = 12345;
     ip = 127.0.0.1;
     port = 9050;
     type = socks5;
     login = “your_login”;
     password = “your_password”;
}
  1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17   • local_ip 和 local_port 是 Redsocks 在本地监听的地址和端口。 • ip 和 port 是你要连接的代理服务器的地址和端口。 • type 可以是 socks4, socks5, http-connect, http-relay 等。 • 如果代理不需要身份验证,可以省略 login 和 password。  3. 设置 iptables 规则 使用 iptables 将流量重定向到 Redsocks 监听的端口: sudo iptables -t nat -N REDSOCKS
sudo iptables -t nat -A REDSOCKS -d 0.0.0.0/8 -j RETURN
sudo iptables -t nat -A REDSOCKS -d 10.0.0.0/8 -j RETURN
sudo iptables -t nat -A REDSOCKS -d 127.0.0.0/8 -j RETURN
sudo iptables -t nat -A REDSOCKS -d 169.254.0.0/16 -j RETURN
sudo iptables -t nat -A REDSOCKS -d 172.16.0.0/12 -j RETURN
sudo iptables -t nat -A REDSOCKS -d 192.168.0.0/16 -j RETURN
sudo iptables -t nat -A REDSOCKS -d 224.0.0.0/4 -j RETURN
sudo iptables -t nat -A REDSOCKS -d 240.0.0.0/4 -j RETURN
sudo iptables -t nat -A REDSOCKS -p tcp -j REDIRECT –to-ports 12345
sudo iptables -t nat -A OUTPUT -p tcp -j REDSOCKS
  1 2 3 4 5 6 7 8 9 10 11   这些规则会将本地 TCP 流量重定向到 Redsocks 监听的端口(此处为 12345)。 4. 启动 Redsocks 配置完成后,你可以启动 Redsocks: sudo redsocks -c /etc/redsocks.conf
  1   你可以将 Redsocks 作为后台守护进程运行,也可以在前台测试时查看日志输出。 5. 验证配置 启动 Redsocks 后,你可以尝试访问外网,使用curl来测试: curl -I https://www.google.com
  1   如果配置正确,你的流量应该通过代理服务器转发,并可以成功访问外网。 6. 停止和清理 如果你不再需要使用 Redsocks,可以停止 Redsocks 进程并清除 iptables 规则: sudo killall redsocks
sudo iptables -t nat -F REDSOCKS
sudo iptables -t nat -D OUTPUT -p tcp -j REDSOCKS
sudo iptables -t nat -X REDSOCKS
  1 2 3 4   这将停止 Redsocks 并还原网络配置。 通过这些步骤,你可以在 Kali Linux 中使用 Redsocks 将流量通过代理服务器。

linux系统上查询ip地址归属

查询本机外网ip:

[root@myzdl ~]# curl  cip.cc
IP	: 218.17.42.12
地址	: 中国  广东  深圳
运营商	: 电信

数据二	: 广东省深圳市宝安区 | 电信

数据三	: 中国广东省深圳市 | 电信

URL	: https://www.cip.cc/218.17.42.12

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

查询67.12.34.126的归属地:

[root@myzdl ~]# curl  cip.cc/67.12.34.126
IP	: 67.12.34.126
地址	: 美国  美国

数据二	: 美国

数据三	: 

URL	: https://www.cip.cc/67.12.34.126

redhat 8.3 vnc 配置

redhat 8.3 的VNC 配置与其他的redhat 版本不太一样,其他版本在安装tigervnc tigervnc-server 后直接执行vncserver 就可以了, 8.3执行vncserver将会出现如下信息:

# vncserver

vncserver has been replaced by a systemd unit.

Please read /usr/share/doc/tigervnc/HOWTO.md for more information.

网上好多文章都说配置 vncserver@:1.service 里边内容大致为

clip_image001

[Unit]

Description=Remote desktop service (VNC)

After=syslog.target network.target

[Service]

Type=forking

WorkingDirectory=/root

User=root

Group=root

PIDFile=/root/.vnc/%H%i.pid

ExecStartPre=/bin/sh -c ‘/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :’

ExecStart=/usr/bin/vncserver -autokill %i

ExecStop=/usr/bin/vncserver -kill %i

[Install]

WantedBy=multi-user.target

clip_image001[1]

但是在redhat8.3 中执行ExecStart 中的脚本 /usr/bin/vncserver 就不能成功,所以这个方法在这里不适用。

/usr/share/doc/tigervnc/HOWTO.md 已经对配置进行里讲解,HOWTO.md  内容如下:

View Code

下边是我的操作 redhat 8.3 配置VNC 步骤:

1. 安装VNC

yum install xdpyinfo

yum install tigervnc tigervnc-server

2.创建vncserver.users

vim /etc/tigervnc/vncserver.users

:1=root

:2=oracle

:3=tester

3.修改vncserver-config-defaults , 如果添加一行localhost ,外部不能访问

clip_image001[2]

vim /etc/tigervnc/vncserver-config-defaults

session=gnome

securitytypes=vncauth,tlsvnc

desktop=sandbox

geometry=2000×1200

alwaysshared

clip_image001[3]

4.修改vncserver-config-mandatory ,如果添加一行localhost ,外部不能访问

vim /etc/tigervnc/vncserver-config-mandatory

securitytypes=vncauth,tlsvnc

desktop=sandbox

geometry=2000×1200

alwaysshared

5.创建config 文件

vim $HOME/.vnc/config

session=gnome

geometry=1000×1200

6.创建vncserver.users

vim /etc/tigervnc/vncserver.users

:1=root

:2=oracle

:3=tester

7.复制vncserver@x.service 文件(这步可能可以省略)

cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:1.service

这个文件告诉你关于配置外部访问的一些信息

View Code

8.设置vnc 密码

如果你想用tester用户让外部连接,就用tester 用户执行,执行后会在$HOME/.vnc/ 下生成passwd 文件

vncpasswd

9.启动vnc

其中的3 指的是/etc/tigervnc/vncserver.users 中对应的用户, 3 就是tester

systemctl daemon-reload

systemctl stop vncserver@:3

systemctl start vncserver@:3

systemctl status vncserver@:3

10.check

如果vncserver-config-defaults 和vncserver-config-mandator 配置了localhost,下边红框中将显示为127.0.0.1:5903 ,导致外部不能访问

netstat -tnlp

11. 外部连接

用tester执行

export DISPLAY=:3

xhost +

其中 3 这个数字是在 /etc/tigervnc/vncserver.users 中配置,出现如下输出表示成功

到这里vnc 配置完成,可以在外部连接。

2020.12.20

GZF

centos添加新的分辨率

(1)首先使用 xrandr 命令列出当前所能检测到的分辨率,如一台显示器,最佳分辨率为 1440×900,由于
未能正确检测,使用 xrandr 命令结果如下:

Screen 0: minimum 320 x 200, current 1440 x 900, maximum 8192 x 8192
VGA1 connected 1440×900+0+0 (normal left inverted right x axis y axis) 0mm x 0mm
1360×768 59.8
1024×768 60.0
800×600 60.3 56.2
848×480 60.0
640×480 59.9 59.9
可以看到当前使用的显卡是 VGA1(后续显示模式在此显卡上添加),列表中并无 1440×900 的分别率可用。
(2)这时可以使用 xrandr 命令新增显示模式,由于显示模式有一定的格式,如果不知道如何配置,可以通过
cvt 来获得。
(3)cvt 使用方法:cvt X Y,X 表示分辨率宽度,Y 表示分辨率高度。如生成 1400×900 的分辨率,可使
用命令:
cvt 1440 900
默认刷新率为 60.0Hz。生成以下模式:
# 1440×900 59.89 Hz (CVT 1.30MA) hsync: 55.93 kHz; pclk: 106.50 MHz
Modeline “1440x900_60.00” 106.50 1440 1528 1672 1904 900 903 909 934 -hsync +vsync
(4)将 cvt 得到的显示模式使用 xrandr 命令添加:
sudo xrandr –newmode “1440×900” 106.50 1440 1528 1672 1904 900 903 909 934 -hsync +vsync
sudo xrandr –addmode VGA1 1440×900
sudo xrandr –output VGA1 –mode 1440×900
(5)这时就可以在显示器分辨率设置里使用 1440×900 的分辨率了。
(6)可能在每次开机时,又不能使用设定好的分辨率了,使用如下命令:
sudo gedit ~/.profile
在 ~/.profile 最末尾添加修改分辨率的命令:
复制代码
xrandr –newmode “1440×900” 106.50 1440 1528 1672 1904 900 903 909 934 -hsync +vsync
xrandr –addmode VGA1 1440×900
xrandr –output VGA1 –mode 1440×900
重启系统后再登录即可,此时再用 xrandr 命令,即可看到新添加的分辨率。

CentOS7使用firewall-cmd打开关闭防火墙与端口

2018年07月10日 00:32:47 朽木o0 阅读数 24124更多

分类专栏: Linux

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

本文链接:https://blog.csdn.net/s_p_j/article/details/80979450

一、centos7版本对防火墙进行加强,不再使用原来的iptables,启用firewalld
  1. 1.firewalld的基本使用

  2. 启动: systemctl start firewalld

  3. 查状态:systemctl status firewalld

  4. 停止: systemctl disable firewalld

  5. 禁用: systemctl stop firewalld

  6. 在开机时启用一个服务:systemctl enable firewalld.service

  7. 在开机时禁用一个服务:systemctl disable firewalld.service

  8. 查看服务是否开机启动:systemctl is-enabled firewalld.service

  9. 查看已启动的服务列表:systemctl list-unit-files|grep enabled

  10. 查看启动失败的服务列表:systemctl --failed

  1. 2.配置firewalld-cmd

  2. 查看版本: firewall-cmd --version

  3. 查看帮助: firewall-cmd --help

  4. 显示状态: firewall-cmd --state

  5. 查看所有打开的端口: firewall-cmd --zone=public --list-ports

  6. 更新防火墙规则: firewall-cmd --reload

  7. 查看区域信息: firewall-cmd --get-active-zones

  8. 查看指定接口所属区域: firewall-cmd --get-zone-of-interface=eth0

  9. 拒绝所有包:firewall-cmd --panic-on

  10. 取消拒绝状态: firewall-cmd --panic-off

  11. 查看是否拒绝: firewall-cmd --query-panic

  1. 3.那怎么开启一个端口呢

  2. 添加

  3. firewall-cmd --zone=public(作用域) --add-port=80/tcp(端口和访问类型) --permanent(永久生效)

  4. firewall-cmd --zone=public --add-service=http --permanent

  5. firewall-cmd --reload # 重新载入,更新防火墙规则

  6. firewall-cmd --zone= public --query-port=80/tcp #查看

  7. firewall-cmd --zone= public --remove-port=80/tcp --permanent # 删除

  8. firewall-cmd --list-services

  9. firewall-cmd --get-services

  10. firewall-cmd --add-service=<service>

  11. firewall-cmd --delete-service=<service>

  12. 在每次修改端口和服务后/etc/firewalld/zones/public.xml文件就会被修改,所以也可以在文件中之间修改,然后重新加载

  13. 使用命令实际也是在修改文件,需要重新加载才能生效。

  14. firewall-cmd --zone=public --query-port=80/tcp

  15. firewall-cmd --zone=public --query-port=8080/tcp

  16. firewall-cmd --zone=public --query-port=3306/tcp

  17. firewall-cmd --zone=public --add-port=8080/tcp --permanent

  18. firewall-cmd --zone=public --add-port=3306/tcp --permanent

  19. firewall-cmd --zone=public --query-port=3306/tcp

  20. firewall-cmd --zone=public --query-port=8080/tcp

  21. firewall-cmd --reload  # 重新加载后才能生效

  22. firewall-cmd --zone=public --query-port=3306/tcp

  23. firewall-cmd --zone=public --query-port=8080/tcp

  1. 4.参数解释

  2. –add-service #添加的服务

  3. –zone #作用域

  4. –add-port=80/tcp #添加端口,格式为:端口/通讯协议

  5. –permanent #永久生效,没有此参数重启后失效

  1. 5.详细使用

  2. firewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" source address="192.168.0.4/24" service name="http" accept' //设置某个ip访问某个服务

  3. firewall-cmd --permanent --zone=public --remove-rich-rule='rule family="ipv4" source address="192.168.0.4/24" service name="http" accept' //删除配置

  4. firewall-cmd --permanent --add-rich-rule 'rule family=ipv4 source address=192.168.0.1/2 port port=80 protocol=tcp accept' //设置某个ip访问某个端口

  5. firewall-cmd --permanent --remove-rich-rule 'rule family=ipv4 source address=192.168.0.1/2 port port=80 protocol=tcp accept' //删除配置

  6. firewall-cmd --query-masquerade # 检查是否允许伪装IP

  7. firewall-cmd --add-masquerade # 允许防火墙伪装IP

  8. firewall-cmd --remove-masquerade # 禁止防火墙伪装IP

  9. firewall-cmd --add-forward-port=port=80:proto=tcp:toport=8080 # 将80端口的流量转发至8080

  10. firewall-cmd --add-forward-port=proto=80:proto=tcp:toaddr=192.168.1.0.1 # 将80端口的流量转发至192.168.0.1

  11. firewall-cmd --add-forward-port=proto=80:proto=tcp:toaddr=192.168.0.1:toport=8080 # 将80端口的流量转发至192.168.0.1的8080端口

二、centos7以下版本
  1. 1.开放80,22,8080 端口

  2. /sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT

  3. /sbin/iptables -I INPUT -p tcp --dport 22 -j ACCEPT

  4. /sbin/iptables -I INPUT -p tcp --dport 8080 -j ACCEPT

  5. 2.保存

  6. /etc/rc.d/init.d/iptables save

  7. 3.查看打开的端口

  8. /etc/init.d/iptables status

  9. 4.关闭防火墙

  10. 1) 永久性生效,重启后不会复原

  11. 开启: chkconfig iptables on

  12. 关闭: chkconfig iptables off

  13. 2) 即时生效,重启后复原

  14. 开启: service iptables start