西维蜀黍

【Linux】iptables 防火墙

iptables原理

iptables是什么

iptables是Linux内核默认的防火墙。防火墙,其实说白了讲,就是用于实现Linux下访问控制的功能的,它分为硬件的或者软件的防火墙两种。无论是在哪个网络中,防火墙工作的地方一定是在网络的边缘。而我们的任务就是需要去定义到底防火墙如何工作,这就是防火墙的策略,规则,以达到让它对出入网络的IP、数据进行检测。

  ...


【Java】多线程-线程优先级

线程优先级的设置

优先级取值范围

Java 线程优先级使用 1 ~ 10 的整数表示:

  ...


【Java】关键字 - synchronized

为什么要引入同步机制

在多线程环境中,可能会有两个甚至更多的线程试图同时访问一个有限的资源。必须对这种潜在资源冲突进行预防。

  ...


【Java】多线程-线程基础

线程的实现

Thread类是专门用来创建线程和对线程进行操作的类。当某个类继承了Thread类之后,该类就叫做一个线程类

  ...


【Java】多线程 - Java中的线程状态及状态切换

Java 的线程状态

Java 语言中定义了 6 种线程状态,在任意一个时间点,一个线程有且只有其中一种状态,这 6 种状态是:

  ...


【Linux】SSH(Secure Shell)学习

什么是SSH(Secure Shell)

**Secure Shell(安全外壳协议,简称SSH)**是一种加密的网络传输协议,可在不安全的网络中为网络服务提供安全的传输环境。SSH通过在网络中创建安全隧道来实现SSH客户端与服务器之间的连接。

SSH使用客户端-服务器模型,标准端口为22。服务器端需要开启SSH守护进程以便接受远端的连接,而用户需要使用SSH客户端与其创建连接。

SSH最常见的用途是远程登录系统,人们通常利用SSH来传输命令行界面和远程执行命令。

如果一个用户从本地计算机,使用SSH协议登录另一台远程计算机,我们就可以认为,这种登录是安全的,即使被中途截获,密码也不会泄露。

最早的时候,互联网通信都是明文通信,一旦被截获,内容就暴露无疑。1995年,芬兰学者Tatu Ylonen设计了SSH协议,将登录信息全部加密,成为互联网安全的一个基本解决方案,迅速在全世界获得推广,目前已经成为Linux系统的标准配置。

需要指出的是,SSH只是一种协议,存在多种实现,既有商业实现,也有开源实现。本文针对的实现是OpenSSH,它是自由软件,应用非常广泛。

SSH的过程

SSH的整个过程是这样的:

  1. 远程主机收到用户的登录请求,把自己的公钥发给用户。
  2. 用户使用这个公钥,将自己输入的登录密码加密后,发送给远程主机。
  3. 远程主机用自己的私钥,解密输入的登录密码,如果密码正确,就同意用户登录。

这个过程本身是安全的,但是实施的时候存在一个风险:如果有人截获了登录请求,然后冒充远程主机,将伪造的公钥发给用户,那么用户很难辨别真伪。因为不像HTTPS协议,SSH协议的公钥是没有证书中心(CA)公证的,也就是说,都是自己签发的。

可以设想,如果攻击者插在用户与远程主机之间(比如在公共的WIFI区域),用伪造的公钥,获取用户的登录密码。再用这个密码登录远程主机,那么SSH的安全机制就荡然无存了。这种风险就是著名的**“中间人攻击”(Man-in-the-middle attack)**。

  ...


【Linux】命令 - scp

scp 跨机远程拷贝

scp是secure copy的简写,用于在Linux下进行远程拷贝文件的命令,和它类似的命令有cp,不过cp只是在本机进行拷贝不能跨服务器,而且scp传输是加密的。当你服务器硬盘变为只读 read only system时,用scp可以帮你把文件移出来。

  ...


【Linux】命令 - dig

dig命令

dig(域信息搜索器)命令是一个用于询问 DNS 域名服务器的灵活的工具。它执行 DNS 查询,显示从已查询名称服务器返回的应答。多数 DNS 管理员使用 dig 命令 来诊断 DNS 问题,因为它灵活性好、容易使用、输出清晰。

  ...


【Network】dnsmasq 初学

dnsmasq的简介

dnsmasq 提供 DNS 缓存DHCP 服务功能。作为域名解析服务器(DNS),dnsmasq可以通过缓存 DNS 请求来提高对访问过的网址的连接速度。作为DHCP 服务器,dnsmasq 可以用于为局域网电脑分配内网 IP 地址和提供路由。DNS和DHCP两个功能可以同时或分别单独实现。

  ...


【Network】Shadowsocks + OpenWRT + dnsmasq-full + ipset + gfwList 实现路由器(小米路由器mini)自动翻墙

注明:本 blog 仅作为技术研究讨论学习信息安全相关技术,请勿用于任何违法用途!并请严格遵命各国和地区法律!

翻墙思路

本方案基于gfwlist,gfwlist( https://github.com/gfwlist/gfwlist )中记录了已经被gfw封锁的域名(https://raw.githubusercontent.com/gfwlist/gfwlist/master/gfwlist.txt)。

  ...