SSH Agent Forwarding

今天在和SA处理新环境的时候,被鄙视了一顿,因为是通过一台跳转始终无法跳到最终的目的机器,他始终就给我来一个词:forwarding!!!我表示,我直接将key也copy过去的,最后没办法,过去被鄙视了一顿,加个-A的确就好了,后来才发现,我copy的key不是对应应该forwarding,不过这还是自己的问题,思维不够敏捷

我想登陆到测试机VM2上,必须要经过一个跳转机VM1,才能跳转到VM2

[……]

Read more

OpenVPN in Linux containers

通过一台LXC,连接OpenVPN跳转,通过tun方式,结果发现lsmod都找不到tun设备,的确连/dev/net目录都没有,差点都开始怀疑人生的时候,仔细想了下环境影响,LXC毕竟和普通虚拟机是不同的,仔细搜索了下,容器与其宿主机是共用同一个内核,因此肯定是不能像普通linux下加载模块那样modprobe一下,具体加载tun方法如下:

首先找到LXC配置文件,在最后加上下面一行

## fo[......]

Read more

Linux namespace

linux下命名空间是一种环境隔离的方法,基于内核态,通过命名空间可以将一些进程抽象到不同的容器中,使得各个容器彼此隔离,但是隔离之后相互间能否存在一些共享,就看你创建namespace的选项了

目前namespaces官方有如下种类:

 Mount namespaces	CLONE_NEWNS
 UTS namespaces	 	CLONE_NEWUTS
 IPC namespaces	 	CL[......]

Read more

非私钥用户SSH登录

一般通过VPN+私钥登录,以root账户ssh,但是假如有其它user要用,通过su user来切换,容易带来很多奇怪的问题,最好直接通过user来进行登录,前提是有些因素不允许一直用root

debian7下具体过程:

1:私钥root登录

2:修改配置

vi /etc/ssh/sshd_config # Change to no to disable tunnelled clear text p[......]

Read more

Linux文件缓冲区

标准库函数提供带缓冲区的文件操作,将会在用户空间中自动为正在使用的文件开辟内存缓冲区

对于全缓冲区,会塞满整个缓冲区再来进行IO系统调用操作,通常磁盘文件的操作都是全缓冲来访问,打印一下缓冲区大小

#include <stdio.h>

int main(){
    printf("%d\n", BUFSIZ);
    return 0;
}
[lihui@localhost ~]$[......]

Read more

Linux日志记录

经常系统某个进程出现异常,就会不自然地通过查看log日志来定位问题,大多数的信息都是通过用户进程调用syslog来产生日志信息

一般进程读取的是syslog.conf配置文件,这个配置文件决定了不同种类的信息会送往何处,但在CentOS6.4上找不到这个配置文件,但是有一个rsyslog.conf文件,而且传统的守护进程syslogd也没有,应该是RHEL做了相应的修改

接口函数,指定了送信息的位[……]

Read more

格式化输出

printf一系列函数能将各种不同类型的参数进行格式编排和输出,每个参数在输出流中的表现形式由格式参数format来控制,包含了需要输出的普通字符和转换控制符代码的字符串,转换控制符规定了其余参数的输出方式和输出地方

#include <stdio.h>

int printf(const char *format, ...);
int sprintf(char *s, const ch[......]

Read more