Linux 用户密码只验证前8位

今天检查了一下自己的服务器,发现有个相当无解的隐患,那就是root密码只需要输入前八位便可以登录了……

虽然说8位从一定程度上就够用了,但是这也太悲催了吧。

我们要想增加密码强度,那么就需要修改一下加密方式了,

首先查看你的方式

more /etc/pam.d/system-auth

 

我们可以看到 password的加密方式为md5 ,如果不是md5或者sha512的加密需要注意了,自己验证一下是不是只需要输入前八位即可:)

使用命令

authconfig --passalgo=sha512 --update

或者

authconfig --passalgo=md5 --update

然后使用 passwd 修改你的密码。

互联网产品:死于方向,毁于节奏

与传统行业相比,互联网是一个节奏变化较快的行业。进入互联网这些年,成功的经历没怎么碰到过,不过失败的,死得轰轰烈烈的案例不仅看到过,而且还真真切切的经历过。说起来,的确象马云同志说的那样,成功的方法千千万万,而失败的原因就那么几个。见过的这些死掉的项目,主要的原因在于:毁于方向,死于节奏!

死于方向
首先,来说说方向。俗话说男怕入才行,女怕嫁错郎,搞互联网方向太重要,要是挑错了方向,而中途灵活度又不够,不能即时调整的话,只会死得很难看。
比如这几天,看到毕胜发的牢骚,对于搞B2C,总觉得是自己入错了行。不过,对于方向这个问题,需要加以区分。某些方向,对于一些人来讲是对的,但是对于另外一些人来讲,可能就不对,因为大家进入的时机不同,所掌握的资源不一样,结果也将大不同。就B2C这个事情,对于毕胜来讲,可能是错的,但是对于刘强东来讲,就是对的。
1、团购的泡沫
首先说一个大家都比较熟悉的,团购。团购最近是出尽了风头,但是对于大多数人来讲,这可能是永远也得不到结果的一个行业。就象团购刚刚进入中国的时候,我在《深入解读Groupon新型团购》讲的一样,单纯的团购平台将很难有竞争力,因为平台对于消费者及商家都缺乏粘性,不过却是一种很好的交叉补贴手段。当时就建议对于大众点评网等,不宜通过此模式直接获利,更好的策略是对此业务进行补贴,让消费者及商家的利益最大化,从而增强平台的粘性,最终可通过其它方式获利。
最终的结果是,淘宝的聚划算成了最大的团购平台,身边有些朋友以前是不上淘宝的,自从有了个聚划算之后,上淘宝的积极性大大的提升了,上聚划算多了,在淘宝上买其它的东西也就多了起来。而另外一些独立的团购平台,以后会怎样,对于大多数人来讲,几乎只能是等死而已!
2、B2B领域的炮灰
说完团购,再来说说B2B。一直以来都在B2B这个圈子里呆着,对这个行业最为熟悉。看到太多的公司犯错。方向选错了,想要赚钱,比登天还难。
比如,在这个领域,国内有好几家做内贸的综合性平台,在Google全球流量排名前1000的网站列表中,http://www.google.com/adplanner/static/top1000/,有个叫马可XX的网站,全球排名竟然能进入到528名,每天的流量曾经应该是接近过100万IP左右。按一般人的想法,网站肯定赚钱了吧,实际上呢,我估计日子应该还是过得苦哈哈的。
实际上,搞综合性的网站,真的是不容易:1)品牌不容易起来,前面还除了有个强悍的阿里,还有个千年老二的慧聪,互联网行业就是个老大吃肉,老二喝汤,老三老四喝西北风的行业;2)流量看上去是高,不过分到下面每家企业,真不剩几个,你凭什么叫企业付钱?3)流量不稳定,很容易被百度干掉。当你看到流量一天比一天高,把销售团队建起来之后,正乐着呢。这不就前一段时间,发现一下子被百度干掉了(前段时间被同时干掉的还有好几个类似的网站,比如一乎XX),网站流量一落千丈,哭都来不及。
其实除了马可XX这种综合性的平台之外,还见到过很多做行业平台的,挑选的行业真的是五花八门,什么都有,但实际上,适合B2B的行业还真的不是那么多,行业选错了,要想赚钱,真的很难。
3、小额外贸B2B的亲身经历
再举个亲身经历的例子,先前所在的公司曾经做过一个类似DH的小额外贸B2B的网站(只参与前期调研,没有实际运营)。这个行业的问题主要在那里呢,至少从我的理解来看,这个东西是个四不象,目标用户群定位很不清楚。
这个东西也有点象阿里巴巴搞的那个无名良品一样,想法很好,要把工厂最优质的产品卖给消费者,不过实际去执行的时候,你就会发现,绝大部分的工厂是没有那个能力的,不善长搞营销,搞服务,术业有专攻,他们的优势还是在于生产而已。
这个行业也类似,想像中理想状态应该是工厂把东西直接批发给老外,但是做着做着发现,大部分的工厂根本就没有这种做零碎小单的能力,最后发现卖东西的还是哪些小打小闹的,还很多打擦边球的,卖假货的。
反正这里面的问题多多,支付的问题,假货的问题,纠纷的问题,一大堆。最后回过头来看看这个模式,本来是想找到B2B与C2C中间的一个缺口,但是实际上走下来你会发现,这个搞大宗贸易干不过Ali,搞零售呢又搞不过eBay。最终的结果,关门大吉而已(提前关门不见得是件坏事情)。不过还好,这个项目没浪费多少钱。
毁于节奏
除了方向之外,在互联网行业,节奏则是另外一个很难把握的难点。对于节奏这个事情,这一拿一放,还真是不好掌握,没几个人能拿捏的好。
1、以做个小网站为例
节奏这个问题,往小了说,你就比如搞一个网站,里面有很多的功能要开发,而你BOSS还时不时的提出些想法,下面也会有很多奇思妙想,而你手头的资源又是有限的,这时候怎么办?难道都让兄弟们去做,发现一个BUG就叫去马上改?如果是这样的话,事情只会是越来越糟。想把事情做好,就必须得抗住、管住,来源于上面、下面及你自己的需求,让项目有节奏的进行,学会和BUG和平共处。
2、上亿RMB的教训
还是曾呆过的一家公司吧,搞B2B(外贸的),花了应该是两三个亿(RMB),前前后后折腾了好几年时间,结果呢,屁都没有放一个。用公司老头子自己的话说,buyer长啥样,咱老外的胡子都没摸着。
现在终于想明白了,这事儿就靠SEO啊,Ali(外贸部分)那么牛X,不过他也是60%的流量直接来源于搜索引擎,剩下的那40%中又有70%是通过SEO渠道过来之后留下来的,也就是差不多90%的买家都和SEO有关。搞定了SEO,这个事情也就成了。
不过当时咱不懂啊,所以在不该投入的时候投入,在不该收获的时候收获。刚刚开始的时候就大搞展会,大规模的建设销售团队,花钱如流水;网站没有流量,没有效果,想要卖钱,自然是很难。最后的结果,可想而知。
后来,终于搞清楚了,却发现“钱快没了”。
3、来个开放面题,来说说京东 
说了这么多不成功的,下面来个开放点的面题,拿一个实际的案例来讨论,比如我们来说说京东,如果你是京东,你将如何掌握以下要点的节奏?
1)都知道物流是京东最具竞争力的地方,那么京东在物流方面总体节奏把握上都有哪些地方可圈可点,下一步该怎样,为什么?
2)都知道“开发平台”是今后的发展方向,亚马逊在“开放平台”方面做的极为出色,京东在“开放平台上”走的是开了还是慢了,下一步该怎样,为什么?
3)京东想做中国的亚马逊,似乎技术差了太多,服务器还老挂啊啥的。如果是你,在技术方面都应该如何布局,为什么?
小结
上面说了这么多,发了发牢骚。其实是比较感慨,作为一个互联网的从业者,尤其是leader,一定要能掌握好方向,拿捏好节奏。要不然,下面一大群人都给着你白干了。

修改pptp默认端口号1723

我们在Linux下建立的pptpd端口号默认是1723,有时候这个端口并不是那么的好用,不是麽?
所以服务端修改端口号比较简单

修改 /etc/services 文件
查找 1723,然后将其修改为你想修改的数值,重启 pptpd即可.

可是客户端,也就是windows自带的VPN拨号该怎么连接了.方法就是也要修改,修改注册表

以管理员身份运行 regedit ,然后查找 如下字段 TcpPortNumber ,查找到了以后,用10进制编辑 该项的值,修改成核服务器端一样的端口号即可.
注册表的项值在 项[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E972-E325-11CE-BFC1-08002bE10318}]
下面的一个文件夹中,使用搜索把

FTP上传脚本

1
2
3
4
5
6
7
8
9
10
11
#! /bin/bash
cd /home/log
filedat=client_uservisit_$(date -d last-hour +"%Y%m%d%H")_0000.dat
ftp -v -n -oPort=端口号 IP地址 << end
user 用户名 密码
cd client_data
put $filedat
bye
end
cd /home/log
mv $filedat ../cdrbak/

MyEclipse8.6 for spring 注册码

还在为了Myeclipse到期而烦恼吗?我们还在百度,google来做伸手党吗?

虽然破解不是什么体面的事情,但是总的

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.text.DecimalFormat;
import java.text.NumberFormat;
import java.text.SimpleDateFormat;
import java.util.Calendar;
 
public class MyEclipseKeyGen {
	private static final String LL = "Decompiling this copyrighted software is a violation of both your license agreement and the Digital Millenium Copyright Act of 1998 (http://www.loc.gov/copyright/legislation/dmca.pdf). Under section 1204 of the DMCA, penalties range up to a $500,000 fine or up to five years imprisonment for a first offense. Think about it; pay for a license, avoid prosecution, and feel better about yourself.";
 
	public String getSerial(String userId, String type) {
		NumberFormat nf = new DecimalFormat("000");
		Calendar cal = Calendar.getInstance();
		cal.add(Calendar.YEAR, 3);
		cal.add(Calendar.DAY_OF_YEAR, -1);
		String licenseNum = nf.format((int) (Math.random() * 1000));
		String expTime = new StringBuilder("-").append(
				new SimpleDateFormat("yyMMdd").format(cal.getTime())).append(
				"0").toString();
		String need = new StringBuilder(userId.substring(0, 1)).append("Y")
				.append(type).append("-100").append(licenseNum).append(expTime)
				.toString();
		String dx = new StringBuilder(need).append(LL).append(userId)
				.toString();
		int suf = this.decode(dx);
		String code = new StringBuilder(need).append(String.valueOf(suf))
				.toString();
		return this.change(code);
	}
 
	private int decode(String s) {
		int i;
		char[] ac;
		int j;
		int k;
		i = 0;
		ac = s.toCharArray();
		j = 0;
		k = ac.length;
		while (j < k) {
			i = (31 * i) + ac[j];
			j++;
		}
		return Math.abs(i);
	}
 
	private String change(String s) {
		byte[] abyte0;
		char[] ac;
		int i;
		int k;
		int j;
		abyte0 = s.getBytes();
		ac = new char[s.length()];
		i = 0;
		k = abyte0.length;
		while (i < k) {
			j = abyte0[i];
			if ((j >= 48) && (j < = 57)) {
				j = (((j - 48) + 5) % 10) + 48;
			} else if ((j >= 65) && (j < = 90)) {
				j = (((j - 65) + 13) % 26) + 65;
			} else if ((j >= 97) && (j < = 122)) {
				j = (((j - 97) + 13) % 26) + 97;
			}
			ac[i] = (char) j;
			i++;
		}
		return String.valueOf(ac);
	}
 
	public static void main(String[] args) {
		try {
			System.out.println("please input register name:");
			BufferedReader reader = new BufferedReader(new InputStreamReader(
					System.in));
			String userId = null;
			userId = reader.readLine();
			if (userId == null || "".equals(userId)) {
				System.out.println("name is null");
				System.exit(0);
			}
			MyEclipseKeyGen myeclipsegen = new MyEclipseKeyGen();
			String res = myeclipsegen.getSerial(userId, "E3MS");
			System.out.println("Serial:" + res);
			reader.readLine();
		} catch (IOException ex) {
			ex.printStackTrace();
		}
	}
}

Linux下的多线程下载

经常使用国外的服务器,使用wget下载资源很爽的,但是无奈今天要从国内的服务器拉资源,那么就有点怀念起来了迅雷

那么只好使用多线程下载了。Axel

32位CentOS
wget -c http://pkgs.repoforge.org/axel/axel-2.4-1.el5.rf.i386.rpm
rpm -ivh axel-2.4-1.el5.rf.i386.rpm
64位CentOS
wget -c http://pkgs.repoforge.org/axel/axel-2.4-1.el5.rf.x86_64.rpm
rpm -ivh axel-2.4-1.el5.rf.x86_64.rpm

或者去 http://down.72xit.com

axel 参数 文件下载地址
-n 指定线程数
-o 指定另存为目录
-s 指定每秒的最大比特数
-q 静默模式