Centos 7 下安装Shadowsocks Python 版

本文以Vultr购买的Centos 7主机为例,详细介绍了安装Shadowsocks Python版的方法。建议以密钥的方式绑定主机并以此登录,注意保护好自己的密钥。

准备

首先,更新系统:

yum update

为了防止被人暴力扫描破解登录密码,我们先对Vultr自动生成的密码进行重置:

passwd root

这里我个人使用了256位随机密码,包含特殊字符。

另外也可以安装fail2ban来禁止掉反复尝试登录的ip地址:

yum install fail2ban

启用fail2ban:

systemctl enable fail2ban

Read More

Line and Circular Interpolation on XY Plane

Tips: This is my homework of “Computer Control System” course, so mistakes do happen.

This article will discuss an interpolation algorithms for line and circular. And it provides an implement of C language.

Interpolation Algorithms

Many numerical control machines are powered by stepping motors. When a pulse is sent to a stepping motor, the stepping motor alters its position by a unit step. Two motors can be used to control the XY movements of an arm or tool over a working plane.

If the pulse are generated by a device which can remember or generate a specified train of pulses, repetitive operations such as grinding, painting, or cutting can be performed hunderds of times with virtually no variation. A microcomputer is an obvious choice to gernerate and remember the pulse.

Since stepper motors can move only in discrete steps, we must approximate the actual curve by a series of small XY motions. Many algorithms rely upon parametric functions such as sine and cosine to perform the necessary calculations. Parametric functions, however, typically require a high degree of numeric precision. Calculating sine and cosine values with a microcomputer can be too time-consuming to be useful in a realtime application.

The following two algorithms require no parametric functions. This makes them ideally suited to the computation and memory capacities of microcomputers. Since these algorithms do not require a large amount of complex mathematical calculation, they are fast enough to be used in real-time applications.

Read More

Kali Linux Run Chrome or VLC with Root User

需要了解的信息

  1. 有些应用之所以在Kali Linux下无法启动,是因为它们不允许以root用户的身份运行,通常,我们可以直接修改相应的二进制文件,将getuid改为getppid,来达到我们的目的。不过这样破坏了安全性,也会因为软件的反复更新,而需要每次做重复的操作。

  2. 我们可以使用gksu -u <username> <bin>的方式来在终端以其他用户的身份启动应用。

  3. usr/share/applications路径下陈列着应用菜单里相应的.desktop文件。其中Exec参数定义了执行的命令。

综述,我们可以创建一个普通的用户,并修改应用菜单执行命令,来达到在root桌面环境下方便地以其他用户身份运行应用的目的。

例:使用Chrome

添加一个名为normaluser的用户:

useradd -m normaluser

此时,便可以用此用户运行Chrome:

gksu -u normaluser google-chrome-stable

此外,编辑/usr/share/applications下的google-chrome.desktopExec参数改为:

gksu -u normaluser /usr/bin/google-chrome-stable %U

这样,我们便可以通过桌面图标启动Chrome了。

Read More

Centos 7 下编译并安装Shadowsocks-libev 并启用obfs混淆

本文以Vultr购买的Centos 7主机为例,详细介绍了编译并部署Shadowsocks-libev的方法。建议以密钥的方式绑定主机并以此登录,注意保护好自己的密钥。

准备

首先,更新系统:

yum update

为了防止被人暴力扫描破解登录密码,我们先对Vultr自动生成的密码进行重置:

passwd root

这里我个人使用了256位随机密码,包含特殊字符。

另外也可以安装fail2ban来禁止掉反复尝试登录的ip地址:

yum install fail2ban

启用fail2ban:

systemctl enable fail2ban

Read More

搭建利用obfs4混淆的Tor bridge的过程

Tor的目的在其匿名性,众所周知,如果我们想连接到Tor网络可能需要一个网桥,一般的网桥还不行,因为会被检测到Tor流量,ip直接被ban掉,当我还知之甚少的时候,一个VPS的ip就被某知名防火墙封禁了3天,当然恢复后,这个ip也不好再用了。

Tor的节点分为三种

1.作为出口节点,Exit Nodes。出口节点实际上是暴露于互联网的,相当于最后真正去访问站点的那个人。

2.在Tor directory中列出的中继节点,叫Tor Relay。IP很可能被检测到,很可能被屏蔽。

3.在Tor directory中不列出的中继节点,叫Bridges Relay,也就是我们这篇文章重点介绍的节点。它可以帮助你绕过网络运营商对于Tor的封锁。

混淆插件

在过去的几年中,审查者开始可以屏蔽即使使用了Bridges的Tor clients。故,在严格审查的环境下,我们应该使用混淆插件进行规避,比如meek,比如obfs4,在这里,将着重介绍如何使用obfs4。

VPS对于Tor的支持

并非所有VPS商都允许使用Tor,所以应该事先了解政策支持情况,下面表格列出了常用的VPS支持情况:

VPSBridgesRelayExit
DigitalOceanYESYESNO
VultrYESYESNO
LinodeYESYESAmbiguous

获取更多信息,可以参考支持/禁封列表

Read More