1.什么是SSH ssh(Secure Shell Protocol)是一种安全的远程登入协议,相比于telnet协议以明文的形式传输数据,用户名,密码,ssh协议将这些内容都进行了加密,可以有效的防止一些网络攻击。 2.SSH原理 ssh登入有两种模式:口令登入和公钥登入,口令登入每次都要输入密码,原理简单但较为繁琐;公钥登入需要用户生成自己的公私钥对,并且要将公钥事先内置于服务器,但安全性更高...

Windows下有很多好用的十六进制编辑器,比如winhex,而Linux下其实也有很多很强大的工具或命令来查看文件的十六进制格式: 1.vi/vim 在命令模式下进入十六进制模式: :%!xxd 1 :%!xxd 退出十六进制模式: :%!xxd -r ...

使用gdb动态调试代码想必大家都不陌生,但实际上gdb还有很多强大的功能,比如动态调试反汇编代码,基本功能并不比Windows下的OD差。先来一张动态调试反汇编代码的图:   只要使用tui参数即可: Vim gdb -tui filename 1 gdb -tui filename 进入之后可以通过layout切换窗口,...

1.login与non-login shell 在讲环境变量配置文件前,要先搞懂login和non-login shell两中模式。简单而言,login shell就是要输入用户名和密码才能登入的shell,non-login shell不要输入用户名但是可能还需要输入密码,最常见的就是使用su命令登入管理员帐号时,没有输入用户名,但是还是要密码,这种情况属于non-login shell。 2.环境变量的配置文件 为了避免重复劳动,可以将一些常用信息...

最近在老师给的实验代码中看到2种类型的mini型服务器架构,第一种是服务器父进程accept客户端,每次accept都fork一个新进程专门用于处理响应事件;第二种是服务器accept客户端,但是每次accept后用socketpair进行进程间通信将accept来的socket描述符传给子进程(该子进程唯一),然后由该子进程fork出新进程用于处理与客户端的交互。很显然,第二种模式下父进程在accept客户端后不再需要亲...

https即http协议加上ssl协议,在使用https协议登入网站时浏览器会先生成请求,让服务器把自己的数字证书发送过来,验证通过后才能协商会话密钥进而安全的访问该站点。 1.模拟CA认证的全过程 对于一个服务器,要想实现https服务,首先要向CA申请数字证书。CA用私钥将服务器发来的申请签名后生成服务器的数字证书,用户(浏览器)想要访问https服务器,就得向服务器发送认证请求,接下...

jdk1.7和jdk1.6在Android应用程序签名过程中有所不同。在官网中有详细说明:http://developer.android.com/tools/publishing/app-signing.html#setup   。下面具体的介绍jdk1.7下Android应用程序的签名过程。   1.签名使用工具 给Andorid程序签名主要使用到3个工具: keytool : 放在jdk安装目录/bin下 jarsigner : 放在jdk安装目录/bin下 zipalign : 放在android sdk目录bu...

新装了里Ubuntu14的系统,在安装eclipse时出现eclipse最上面到菜单栏消失了,解决方法如下: 1. 新建一个eclipse.sh文件,加入如下内容,下面的路径是ecipse的路径 Vim export UBUNTU_MENUPROXY=0 /opt/eclipse/eclipse 123 export UBUNTU_MENUPROXY=0 /opt/eclipse/e...

首先安装Mysql     在http://dev.mysql.com/downloads/mysql/5.6.html 中下载对应版本的Mysql源码包,然后编译安装,具体过程略过。 安装Apache     1.下载必要组件 下载apache, http://httpd.apache.org/download.cgi ,安装Apache前要先装3个组件: apr :http://archive.apache.org/dist/apr/apr-1.4.5.tar.gz apr-util  : http://archive.apache.org/dist/apr/apr-util...

rpm命令常用参数 -i  (install)  安装 -q (query)  查询 -a (all)          所有的 -e (erase)    删除 -l  (list)         显示(显示安装包中的所有文件被安装到哪些目录下) -U(update) 升级rpm包 –nodeps           忽略依赖关系并继续操作 –force                强制操作 如强制安装删除等 –requires         显示...

gcc升级到4.8后 gdb版本太低不能用,所以要相应的升级gdb。这里采用源码安装的方式,在http://www.gnu.org/software/gdb/download/下载gdb7.6放到/opt/gdb7.6目录(其他目录亦可)下,然后 Vim ./configure --prefix=/opt/gdb7.6/gdb make sudo make install 123 ./configure --prefix=/opt/gdb7.6/gdbmak...

在Linux下经常会需要查找一些文件的所在位置,通过一些命令能很方便的找到曾经苦苦搜寻的文件。 find find功能很强大,最主要的功能室一个根据文件名查找,还可以根据修改时间、文件类型等来查找文件。 find   路径    -name  文件名 例: Vim find / -name  'aa*' 1 find / -name  'aa*' ...

使用printf输出的时候,一般情况下都只是输出静态画面,但是其实使用printf即可输出动态彩色画面。 原理是通过ANSI控制码实现颜色变化及动态画面,颜色的控制码以  \033[  开头,后面接上字符、背景的颜色码;动态画面的控制码以 \33[  开头后面接上具体动作的控制码,通过移动光标来实现画面的变化,为了更好的理解,下面用一个实例来演示: C++ p...

Linux下的printf和Windows下的略有区别:Linux下printf不会将数据立即输出,而是先放入缓冲区,等缓冲区满或者遇到/n/r时才会输出。如果想立即输出,需要加上 fflush(stdout)。 仿Linux中printf的源码: C++ #include <stdio.h> #include <stdarg.h> #include <malloc.h> #define IsDigital(c) ((c>='0') &...

十进制转换成任意进制 C++ static char * digits = "0123456789abcdefghijklmnopqrstuvwxyz"; /** IN num : 待转换的数字 IN n : 转换进制 OUT str :转换后的字符串 (逆序) */ void Convert(int num , int n , char *str) { while(num) { *str = *(num%n + digits) str++; } *str = '\0'; } ...

+
跳转到评论