行云无鸣

2011-12-03

在Linux下安装CLI版本的Dropbox

Filed under: 乱语 — 标签:, , — hellyguo @ 14:07

1.下载并解压安装包

wget -O – http://www.dropbox.com/download?plat=lnx.x86 | tar xzf –

2.从解压出的~/.dropbox-dist文件夹执行守护进程

~/.dropbox-dist/dropboxd

3.如果是第一次执行,会提示要求拷贝出现的链接到浏览器去认证
示例如下

root@www:~# ~/.dropbox-dist/dropboxd
This client is not linked to any account…
Please visit https://www.dropbox.com/cli_link?host_id={hex id}&cl=en_US to link this machine.

通过浏览器访问此链接后,会要求你登录或再度输入密码,成功后终端即出现

root@www:~# ~/.dropbox-dist/dropboxd
This client is not linked to any account…
Please visit https://www.dropbox.com/cli_link?host_id={hex id}&cl=en_US to link this machine.
Client successfully linked, Welcome {user}!

这时再去看~,就会发现Dropbox文件夹,同步的文件即在此
4.下载dropbox.py,用以控制守护进程

wget https://www.dropbox.com/download?dl=packages/dropbox.py

罗列常用命令

dropbox.py start #启动
dropbox.py stop #停止
dropbox.py lansync n #停用局域网同步

简单翻译介绍,具体细节参见Dropbox

2011-10-01

Example.com服务器配置

Filed under: 乱语 — 标签:, , , , , , , , , — hellyguo @ 21:15

服务器为Dell PowerEdge 1950
安装Debian6作为操作系统
安装系统时,需要提前准备bnx2/bnx2-mips-06-5.0.0.j3.fw包(为non-free,故需要自行准备),下载路径是:debian.org

邮件服务器配置
1. 安装exim4/courier-pop
sudo apt-get install exim4 exim4-daemon-heavy courier-pop courier-pop-ssl
2. 安装sasl
sudo apt-get install sasl2-bin
3. 配置sasl,使之自启动
sudo vi /etc/default/saslauthd
START=yes #令其自启动
4. 安装SpamAssassin
sudo apt-get install spamassassin
5. 配置SpamAssassin,使之自启动
sudo vi /etc/default/spamassassin
ENABLE=1 #令其自启动
CRON=1 #令其在晚间自动更新过滤规则
6. 启动SpamAssassin
sudo /etc/init.d/spamassassin start
7. 安装ClamAV
sudo apt-get install clamav
8. 安装Greylistd
sudo apt-get install greylistd
9. 配置exim4
sudo dpkg-reconfigure exim4-config
选项提示
1) internet site
2) example.com
3) 留空
4) example.com
5) 留空
6) 留空
7) NO
8) Maildir
9) NO
10. 配置exim4自签证书
sudo /usr/share/doc/exim4/examples/exim-gencert

[*] Creating a self signed SSL certificate for Exim!
This may be sufficient to establish encrypted connections but for
secure identification you need to buy a real certificate!

Please enter the hostname of your MTA at the Common Name (CN) prompt!

Generating a 1024 bit RSA private key
………………………++++++
…………………++++++
writing new private key to ‘/etc/exim4/exim.key’
—–
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter ‘.’, the field will be left blank.
—–
Country Code (2 letters) [US]:CN
State or Province Name (full name) []:Zhejiang
Locality Name (eg, city) []:Hangzhou
Organization Name (eg, company; recommended) []:example.com
Organizational Unit Name (eg, section) []:http://www.example.com
Server name (eg. ssl.domain.tld; required!!!) []:mail.example.com
Email Address []:webmaster@example.com
[*] Done generating self signed certificates for exim!
Refer to the documentation and example configuration files
over at /usr/share/doc/exim4-base/ for an idea on how to enable TLS
support in your mail transfer agent.
生成的证书位于/etc/exim4,名为exim.crt/exim.key。此处为默认位置,在下面步骤中将用到。如果不移动,则下面对证书路径不需要修改;如果进行移动,则需要修改证书路径

11. 配置exim4,使之支持STARTTLS及sasl认证
sudo adduser Debian-exim sasl
sudo /etc/init.d/saslauthd restart
sudo vi /etc/exim4/exim4.conf.template

a) 在.ifdef MAIN_TLS_ENABLE上方添加MAIN_TLS_ENABLE = yes
b) 确认上步的证书路径,已移动则修改
c) 在Authenticate against local passwords using sasl2-bin下方打开plain_saslauthd_server及login_saslauthd_server段的注释
12. 更新exim4的配置文件,并重启exim4
sudo update-exim4.conf
sudo /etc/init.d/exim4 restart

13. 设置每次创建用户时自动产生Maildir
sudo maildirmake /etc/skel/Maildir
sudo chmod 755 /etc/skel/Maildir

14. 测试配置
sudo apt-get install swaks
swaks -a -tls -q HELO -s localhost -au user -ap 'pwd'

=== Trying localhost:25…
=== Connected to localhost.
EHLO localhost
<- 250-localhost Hello localhost [127.0.0.1]
<- 250-SIZE 52428800
<- 250-PIPELINING
<- 250-STARTTLS
STARTTLS
EHLO localhost
<~ 250-localhost Hello localhost [127.0.0.1]
<~ 250-SIZE 52428800
<~ 250-PIPELINING
<~ 250-AUTH PLAIN LOGIN
QUIT
<~ 221 localhost closing connection
=== Connection closed with remote host.

15. 在Exim4中启用Greylistd
sudo greylistd-setup-exim4 add
sudo update-exim4.conf
sudo /etc/init.d/exim4 restart

16. 在Exim4中启用SpamAssassin
sudo vi /etc/exim4/exim4.conf.template
sudo update-exim4.conf
sudo /etc/init.d/exim4 restart

a) 查找spamd_address = 127.0.0.1,解开此行注释
b) 查找Add headers to a message if it is judged to be spam.,解开下方的warn块
17. 配置Courier证书。默认Courier的证书信息为虚构信息,需要按服务器配置Courier-POP的证书
sudo vi /etc/courier/pop3d.cnf

RANDFILE = /usr/lib/courier/pop3d.rand

[ req ]
default_bits = 1024
encrypt_key = yes
distinguished_name = req_dn
x509_extensions = cert_type
prompt = no

[ req_dn ]
C=CN
ST=Zhejiang
L=Hangzhou
O=example.com
OU=http://www.example.com
CN=mail.example.com
emailAddress=webmaster@example.com

[ cert_type ]
nsCertType = server

18. 生成证书
sudo rm –rf /etc/courier/pop3d.pem
sudo rm –rf /usr/lib/courier/pop3d.pem
sudo mkpop3dcert
sudo mv /usr/lib/courier/pop3d.pem /etc/courier
cd /usr/lib/courier
sudo ln –s /etc/courier/pop3d.pem pop3d.pem

Generating a 1024 bit RSA private key
..++++++
………………………++++++
writing new private key to ‘/usr/lib/courier/pop3d.pem’
—–
1024 semi-random bytes loaded
Generating DH parameters, 512 bit long safe prime, generator 2
This is going to take a long time
…+………+…….+…………..+……….+……………………………..+.+…+…+…………………….+…+……+……….+…………………………………………+……………………..+……………………………………………………………..+………….+…………+…+…..+…..+………….+…………………..+..+……..+………..+….+…..+……………………………..+…………….+………………+……………….+.+……………………………..+………+……..+………………………………+…………………+…….+.+…+……………………….+………………….+………………….+………+………………………..+..+……………………………………………………………+………….+…..++*++*++*++*++*++*
subject= /C=CN/ST=Zhejiang/L=Hangzhou/O=example.com/OU=http://www.example.com/CN=mail.example.com/emailAddress=webmaster@example.com
notBefore=Sep 29 14:35:10 2011 GMT
notAfter=Sep 28 14:35:10 2012 GMT
SHA1 Fingerprint=38:A1:30:3A:3F:F3:5F:B6:25:BF:8C:9E:C9:BF:91:DB:FE:EA:13:5C

19. 配置Courier-POP
sudo vi /etc/courier/pop3d
POP3AUTH=””改为POP3AUTH=”LOGIN PLAIN”
POP3AUTH_TLS=””改为POP3AUTH_TLS=”LOGIN PLAIN”
20. 重启Courier-POP
sudo /etc/init.d/courier-pop restart
sudo /etc/init.d/courier-pop-ssl restart

21. 服务器DNS设置
a) 将域名example.com的MX地址指向mail.example.com
b) 将mail.example.com指向1.2.3.4
22. 客户端设置
POP3
mail.example.com,采用SSL/TLS,普通密码
SMTP
mail.example.com,采用STARTTLS,普通密码
VPN服务器配置
1. 配置步骤:
a) sudo apt-get install pptpd
b) sudo vi /etc/pptpd.conf
将localip和remoteip进行设置
c) sudo vi /etc/ppp/pptpd-options
开启ms-dns
d) sudo vi /etc/ppp/chap-secrets
添加用户名密码
e) sudo vi /etc/sysctl.conf
开启net.ipv4.ip_forward=1
f) sudo sysctl -p
g) sudo /etc/init.d/pptpd restart
2. 客户端设置
XP 网络连接,新建连接,连接工作场所,虚拟专用网络,example,不初始拨号,www.example.com
用户名密码待分配
iptables设置
1. 编写setIptables,位于/home/opuser/bin,如下:

#!/bin/sh

#清除表
sudo iptables -F INPUT
sudo iptables -F OUTPUT
sudo iptables -F FORWARD

#设置默认
sudo iptables -P INPUT DROP
sudo iptables -P FORWARD ACCEPT
sudo iptables -P OUTPUT ACCEPT

#允许本地网卡通讯
sudo iptables -A INPUT -i lo -j ACCEPT

#允许已建立连接的连接
sudo iptables -A INPUT -m state –state RELATED,ESTABLISHED -j ACCEPT

#允许DNS
sudo iptables -A INPUT -p tcp -m state –state NEW -m tcp –dport 53 -j ACCEPT
sudo iptables -A INPUT -p udp -m state –state NEW -m udp –dport 53 -j ACCEPT

#允许ping
sudo iptables -A INPUT -p icmp -m icmp –icmp-type any -j ACCEPT

#允许telnet
#sudo iptables -A INPUT -p tcp -m tcp –dport 23 -j ACCEPT

#允许ssh
sudo iptables -A INPUT -p tcp -m tcp –dport 22 -j ACCEPT

#允许http
#sudo iptables -A INPUT -p tcp -m tcp –dport 80 -j ACCEPT

#允许mail
sudo iptables -A INPUT -p tcp -m tcp –dport 25 -j ACCEPT
sudo iptables -A INPUT -p tcp -m tcp –dport 110 -j ACCEPT
sudo iptables -A INPUT -p tcp -m tcp –dport 143 -j ACCEPT
sudo iptables -A INPUT -p tcp -m tcp –dport 465 -j ACCEPT
sudo iptables -A INPUT -p tcp -m tcp –dport 993 -j ACCEPT
sudo iptables -A INPUT -p tcp -m tcp –dport 995 -j ACCEPT

#启用VPN
sudo iptables -A INPUT -p tcp –dport 1723 -j ACCEPT
sudo iptables -A INPUT -p tcp –dport 47 -j ACCEPT
sudo iptables -A INPUT -p gre -j ACCEPT
# for dynamic ip(ADSL etc.)
#sudo iptables -t nat -A POSTROUTING -s 192.168.100.0/24 -o eth0 -j MASQUERADE
# for static ip
sudo iptables -t nat -A POSTROUTING -s 192.168.100.0/24 -o eth0 -j SNAT –to 1.2.3.4
sudo iptables -A FORWARD -p tcp –syn -s 192.168.100.0/24 -j TCPMSS –set-mss 1356

#保存
sudo iptables-save > /tmp/iptables-settings
sudo mv /tmp/iptables-settings /etc/iptables-settings
#启用
sudo iptables-restore < /etc/iptables-settings
2. 在系统启动时自动加载iptables规则
sudo vi /etc/network/if-pre-up.d/iptables
sudo chmod +x /etc/network/if-pre-up.d/iptables

iptabls内容

#!/bin/sh
/sbin/iptables-restore < /etc/iptables-settings

3. 测试

2011-06-05

Debian下采用pptp连接VPN服务器

Filed under: 乱语 — 标签:, , , , , — hellyguo @ 20:25

一般都在Windows或者iPhone下用VPN,这次拜GFW所赐,maven也无法访问,只能在服务器上临时使用VPN来救急救场。
服务器是Debian,预先装好PPTP。

  1. 新建VPN连接
    sudo pptpsetup --create vpn --server vpnserver --username temp --password temp --encrypt
  2. 连接VPN Server
    sudo pon vpn
    sudo ip route del default
    sudo ip route add default via 192.168.111.1 dev ppp0

    如果你还不能上网,譬如我,那就是你的DNS还没有设置对。修改/etc/resolv.conf,新增OpenDNS和Google DNS。
    sudo vi /etc/resolv.conf
    在最前面新增如下内容:

    nameserver 208.67.222.222
    nameserver 208.67.220.220
    nameserver 208.67.222.220
    nameserver 208.67.220.222
    nameserver 8.8.8.8
    nameserver 8.8.8.4

  3. 终止VPN连接
    sudo poff
    sudo ip route add default via 192.168.10.254 dev eth0
  4. 删除VPN连接
    sudo pptpsetup --delete vpn

2011-06-01

在Windows下如何制作Linux启动引导U盘(转)

Filed under: 乱语 — 标签:, , , , , — hellyguo @ 21:39

题注:(做过多次,总是忘记,记于笔头,防止忘记)

1.格式化u盘
在Windows下把u盘格式化为fat(2G以下)或fat32(2G以上)格式(强烈推荐使用hp优盘格式化工具)
2.下载并使用syslinux
在这里下载 syslinux
解压后,在win32目录里面使用以下命令来

syslinux.exe -m -a j: (j:为u盘的盘符)

即可在优盘中创建一个可启动的文件(是隐藏的)。
3.在u盘中建立此文件syslinux.cfg(用记事本编辑) ,并在里面加入
default vmlinuz
append initrd=initrd.gz

4.下载
initrd.gz
vmlinuz
下载你所需的debian的iso文件(只需要CD1可以)。
把这3个文件都放到U盘里面
Over

2010-10-03

配置OpenVPN

Filed under: 乱语 — 标签:, , , — hellyguo @ 11:35

一开始是用现成的OpenVPN AS的,在登录WEB UI时,总是报错。后台原因是PAM认证失败。
没法解决这个问题,很郁闷。
最后,采用了源代码自行编译,成功!
流程如下:
1.下载 http://swupdate.openvpn.net/community/releases/openvpn-2.2-beta3.tar.gz
2.编译OpenVPN:“./configure && make && make install”
3.报错,要求提供LZO的库,或是采用“./configure –disable-lzo”
4.在 http://openvpn.net/index.php/open-source/downloads.html 最下方发现LZO库的连接
5.下载 http://www.oberhumer.com/opensource/lzo/download/lzo-2.03.tar.gz
6.编译LZO:“./configure && make && make install”
7.再编译OpenVPN:“./configure && make && make install”
—-以上在Linux服务器上操作
8.下载客户端 http://openvpn.net/release/openvpn-2.1.3-install.exe
9.安装
10.进入到C:\Program Files\OpenVPN\easy-rsa,重命名vars.bat.sample为vars.bat,openssl.cnf.sample为openssl.cnf
11.根据自身情况修订vars.bat
12.cmd进入到C:\Program Files\OpenVPN\easy-rsa
13.按README中步骤,在其下的keys文件夹生成ca.crt,server.crt和一个client.crt,请牢记server和client的密码
14.拷贝ca.crt、client.crt、client.key、client.csr到config文件夹
15.拷贝sample-config下的client.ovpn到config,并根据情况修改文件中的

remote my-server-1 1194

ca ca.crt
cert client.crt
key client.key

注意,CRT及KEY都要和client.ovpn放在一个文件夹下
16.将ca.crt,server.crt,server.key,server.csr,dh1024.pem都传到服务器上
—-以上在Windows客户端上操作
17.拷贝源代码sample-config-files下的三个shell文本和server.conf,和上传的文件放到一起
18.修改server.conf,以匹配ca.crt和server.crt

ca ca.crt
cert client.crt
key client.key

注意,CRT及KEY都要和server.conf放在一个文件夹下
19.修改openvpn-startup.sh,将dir指向目前文件夹,并修改最后部分,只留下一行:

openvpn –cd $dir –daemon –config server.conf

20.执行openvpn-startup.sh
—-以上在Linux服务器上操作
21.双击桌面的“OpenVPN GUI”执行,右键点击托盘区图标,选connect即开始连接,等其变绿,即告成功

2010-07-24

coLinux使用记录

Filed under: 乱语 — 标签:, , , — hellyguo @ 21:06

使用coLinux记录,以作备忘
用的是Debian 5.02 lenny,镜像网上下载,48MB
1.网络设置
eth0作为对外连接网卡,采用slirp
后来由于又安装了VMware,导致eth0无法找到。
查看日志后发现,eth0被替换为eth2,而eth2没有在/etc/network/interfaces定义,导致网络无法访问。
在网上查找后,确认需要指定eth0的MAC地址,再重启,就可以解决了
这里的MAC地址,可以通过查看/etc/udev/rules.d/70-persistent-net.rules得到
eth0=slirp,00:ff:10:1d:64:00
eth1作为连入网卡,采用tuntap
这个win32tap,是coLinux安装后出现的那块网卡,MAC地址也是它的
eth1=tuntap,win32tap,00:FF:A1:DB:51:93
2.磁盘扩容
Windows下
创建10G大小usr分区,2G大小home分区,512M大小swap分区
fsutil file createnew usr.ext3 10737418240
fsutil file createnew home.ext3 2147483648
fsutil file createnew swap.dsk 536870912

注:创建好后,建议马上启用NTFS的压缩功能,可以有效减小磁盘占用。包括原有的磁盘文件,也建议压缩。
对速度的影响基本可以忽略
编辑coLinux配置文件,添加加载这几个分区文件的语句
cobd0="D:\coLinuxHD\Debian.root.ext3"
cobd1="D:\coLinuxHD\usr.ext3"
cobd2="D:\coLinuxHD\home.ext3"

进入coLinux后,为新文件创建文件系统
mkfs.ext3 /dev/cobd1
mkfs.ext3 /dev/cobd2
mkswap /dev/cobd3

激活交换分区
swapon
创建挂载点
cd /mnt
mkdir bd1 bd2

临时挂载
mount -t ext3 /mnt/bd1 /dev/cobd1
mount -t ext3 /mnt/bd2 /dev/cobd2

将文件拷贝到新分区中
cp -ax /usr /mnt/bd1
cp -ax /home /mnt/bd2

编辑fstab,添加
/dev/cobd1 /usr ext3 errors=remount-ro 0 2
/dev/cobd2 /home ext3 errors=remount-ro 0 2

重命名原文件夹,防止后期用磁盘挂载后,凭空占据空间,却无法删除
mv /usr /usr1
mv /home /home1

重启
reboot
确认没有问题后,删除原文件夹和临时挂载点
rm -rf /usr1
rm -rf /home1
rm -rf /mnt/bd1 /mnt/bd2

3.Windows分区加载
其实很简单
在coLinux的配置文件中添加:
cofs0=C:\
cofs1=D:\
cofs2=E:\
cofs3=F:\
cofs4=G:\

在coLinux的/mnt中定义好挂载点后
cd /mnt
mkdir winc wind wine winf wing

编辑fstab
cofs0 /mnt/winc cofs defaults 0 0
cofs1 /mnt/wind cofs defaults 0 0
cofs2 /mnt/wine cofs defaults 0 0
cofs3 /mnt/winf cofs defaults 0 0
cofs4 /mnt/wing cofs defaults 0 0

这里,我犯了经验主义错误
/dev/cofs0 /mnt/winc cofs defaults 0 0
/dev/cofs1 /mnt/wind cofs defaults 0 0
/dev/cofs2 /mnt/wine cofs defaults 0 0
/dev/cofs3 /mnt/winf cofs defaults 0 0
/dev/cofs4 /mnt/wing cofs defaults 0 0

用了/dev/cofsX这种形式,而不是要求的cofsX,结果,陷在这里很久

2010-07-06

参考网络,将texlive2009配置成支持中文

Filed under: 乱语 — 标签:, , , — hellyguo @ 15:15

sudo mkdir -p /usr/share/texmf/fonts/truetype/chinese
cd /usr/share/texmf/fonts/truetype/chinese/
#创建到~/.fonts目录下字体的联接档
ln -s ~/.fonts/simsun.ttc
ln -s ~/.fonts/simhei.ttf
ln -s ~/.fonts/simfang.ttf
ln -s ~/.fonts/simkai.ttf
cd /usr/share/texmf/
sudo gbkfonts fonts/truetype/chinese/simfang.ttf fs
sudo gbkfonts fonts/truetype/chinese/simsun.ttc song
sudo gbkfonts fonts/truetype/chinese/simkai.ttf kai
sudo gbkfonts fonts/truetype/chinese/simhei.ttf hei
sudo texhash
sudo updmap-sys –enable Map cjk.map

配置完之后,我们来测试一下。
用gedit写如下内容

\documentclass{article}
\usepackage{CJK}
\begin{document}
\begin{CJK}{GBK}{song}
这是latex
\end{CJK}
\end{document}

保存为gbk编码。
安装完成后用latex *.tex来编译cjk的TeX文件,用ctex *.tex来编译cct文件。然后用dvipdfmx *.dvi或者dvipdfm *.dvi(看看结果中哪个没有乱码)来转换成pdf
也可以一条命令出pdf:pdflatex *.tex

基本上,就是把路径给修改了一下
从apt上拿下来的texlive2009,路径需要改为:

/usr/share/texmf/

参考自:URL

2010-07-05

Linux下java时区设置

Filed under: 乱语 — 标签:, , — hellyguo @ 17:09

方法1:

java -Duser.timezone=Asia/Shanghai xxx

方法2:

export TZ=”Asia/Shanghai”

建议使用方法2,一劳永逸

2010-06-24

svn单独提交文件夹属性

Filed under: 乱语 — 标签:, — hellyguo @ 14:44

编辑属性
$ svn propedit svn:ignore .
提交属性
$ svn commit -depth empty .

2010-06-16

3G网卡(CDMA2000)在Linux下拨号

Filed under: 乱语 — 标签:, , , — hellyguo @ 20:26

我的3G无线网卡是电信附送的EC1260,在Windows下和MAC OS X下都能正常运行。在Debian下,通过其自带的华为拨号软件,刚开始非常顺利。某次我更新Debian后,无线网卡无法被拨号器认出,重装拨号器也无效。不得以,只能在VM上的Windows下用3G网卡上网,非常不爽。
知道肯定有命令行命令直接处理,但一直忘记查。这次,记得了,查到了一个比较方便的拨号软件:wvdial。
安装
$ sudo apt-get install wvdial
使用
插上无线网卡后
$ sudo wvdialconf
生成一份基本配置/etc/wvdial.conf
根据自身情况编辑此文件
$ sudo vi /etc/wvdial.conf
这份是我编辑好的:

[Dialer Defaults]
Init1 = ATZ
Init2 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
Modem Type = Analog Modem
Baud = 9600
New PPPD = yes
Modem = /dev/ttyUSB0
ISDN = 0
; Phone = <Target Phone Number>
Phone = #777
; Password = <Your Password>
Password = vnet.mobi
; Username = <Your Login Name>
Username = ctnet@mycdma.cn
Dial Prefix =
Dial Attempts = 1
Dial Command = ATM1L3DT
Ask Password = off
Auto Reconnect = on
Abort on Busy = off
Carrier Check = no
Check Def Route = on
Abort on No Dialtone = on
Stupid Mode = on
Idle Seconds = 0
Auto DNS = on

拨号命令:
$ sudo wvdial
退出方式:
在当前窗口上按Ctrl+C

Older Posts »

%d 博主赞过: