Linux系统安装obfuscated-openssh

1,安装obfuscated-openssh server

obfuscated-openssh可以代替系统的OpenSSH服务,如果在安装过程中不指定–prefix选项,它将替换系统openssh-server的二进制程序和配置文件. 本文指定了安装目录,并不会与系统自带的openssh服务冲突.

yum install zlib openssl                     #适用Redhat/CentOS系统
sudo apt-get install zlib1g-dev libssl-dev   #适用Ubuntu系统

wget -O ofcssh.tar.gz https://github.com/brl/obfuscated-openssh/tarball/master

tar zxvf ofcssh.tar.gz

cd brl-obfuscated-openssh-ca93a2c/

./configure --prefix=/usr/local/obfus  #如果遇到错误请参考下文处理方法
make
make install

sed -i "s/Port /#Port /g" /usr/local/obfus/etc/sshd_config      #22端口被正常的SSH服务使用,这里不需要
sed -i "s/UsePAM /#UsePAM /g" /usr/local/obfus/etc/sshd_config  #obfuscated-openssh不支持UsePAM选项
echo "ObfuscatedPort 32" >> /usr/local/obfus/etc/sshd_config              #指定监听端口
echo "ObfuscateKeyword fuckthegfw" >>  /usr/local/obfus/etc/sshd_config   #指定混淆密钥

运行:
/usr/local/obfus/sbin/sshd -f /usr/local/obfus/etc/sshd_config &


设置开机自启(写入/etc/rc.local)
echo 'nohup /usr/local/obfus/sbin/sshd -f /usr/local/obfus/etc/sshd_config >> /var/log/obfus.log 2>&1 &' >> /etc/rc.local

(more…)

Read More

Linux系统下查看网卡列表

Linux系统下如果没有安装udev的话,网卡不会以eth0的方式存在于系统里,系统会直接使用BIOS传递过来的设备名作为网卡名称,例如em1之类的。那么如何查看所有网卡的名称呢?

$ cat /proc/net/dev
Inter-|   Receive                                                |  Transmit
 face |bytes    packets errs drop fifo frame compressed multicast|bytes    packets errs drop fifo colls carrier compressed
 bond0:       0       0    0    0    0     0          0         0        0       0    0    0    0     0       0          0
   em2:       0       0    0    0    0     0          0         0        0       0    0    0    0     0       0          0
   em4:    3587      18    0    0    0     0          0         2    11100      65    0    0    0     0       0          0
  p3p1:       0       0    0    0    0     0          0         0        0       0    0    0    0     0       0          0
    lo:    3934      64    0    0    0     0          0         0     3934      64    0    0    0     0       0          0
   em1:   15196     117    0   18    0     0          0        19    15865     107    0    0    0     0       0          0
  p3p2:       0       0    0    0    0     0          0         0        0       0    0    0    0     0       0          0
   em3:       0       0    0    0    0     0          0         0        0       0    0    0    0     0       0          0
 
$ netstat -i
Kernel Interface table
Iface   MTU Met   RX-OK RX-ERR RX-DRP RX-OVR    TX-OK TX-ERR TX-DRP TX-OVR Flg
bond0      1500 0         0      0      0 0             0      0      0      0 BMmU
em1        1500 0       193      0     33 0           144      0      0      0 BMRU
em2        1500 0         0      0      0 0             0      0      0      0 BMU
em3        1500 0         0      0      0 0             0      0      0      0 BMU
em4        1500 0        18      0      0 0            69      0      0      0 BMRU
lo        65536 0       119      0      0 0           119      0      0      0 LRU
p3p1       1500 0         0      0      0 0             0      0      0      0 BMsU
p3p2       1500 0         0      0      0 0             0      0      0      0 BMsU
Read More

LDAP用户管理,实现客户端增删改查

LDAP简称对应

o– organization(组织-公司)
ou – organization unit(组织单元/部门)
c - countryName(国家)
dc - domainComponent(域名组件)
sn – suer name(真实名称)
cn - common name(常用名称)
dn - distinguished name(专有名称)

查看用户列表

ldapsearch -x -b "ou=People,dc=163,dc=com" | grep dn

这一步需要注意:
如果是在客户端查询,需要加入-H ldap://192.168.x.x参数
如果是通过ldif导入的系统用户,其DN是uid=UserNmae,ou=People,dc=163,dc=com
而如果通过phpldapadmin或者LAM等第三方工具建立的用户,其DN是cn=UserNmae,ou=People,dc=163,dc=com
如果使用ldapsearch或者ldappasswd命令查询/修改用户信息的时候,请注意这一点

查询单个用户信息

ldapsearch -x -b "用户DN"    #根据上面的用户列表,找到用户的DN
ldapsearch -x -b "uid=ldapuser8,ou=People,dc=163,dc=com"

查看组列表

ldapsearch -x -b "ou=Group,dc=163,dc=com" | grep dn

(more…)

Read More

解决LDAP出现ldap_bind: Invalid credentials (49)错误

LDAP最经常遇到的就是ldap_bind: Invalid credentials (49)错误,本文阐述了错误原因及解决办法:

比如在某LDAP客户端,使用rootdn(管理员)权限为某用户修改密码时

$ ldappasswd -H ldap://192.168.32.1 -x -D "cn=admin,ou=People,dc=115,dc=com" -W -S "uid=zhang3,ou=People,dc=115,dc=com"
New password: 
Re-enter new password: 
Enter LDAP Password: 
ldap_bind: Invalid credentials (49)

错误原因1:管理员DN或者用户DN错误
管理员DN是在/etc/openldap/slapd.conf中指定的rootdn,其格式
应该是”cn=admin,dc=115,dc=com”
而不是”cn=admin,ou=People,dc=115,dc=com”
而普通用户的DN才应该是”uid=zhang3,ou=People,dc=115,dc=com”。
也可以执行如下命令查看该用户的DN是否存在

查询用户列表,不需要密码
$ ldapsearch -H ldap://192.168.32.1 -x -b "ou=People,dc=115,dc=com" | grep dn

(more…)

Read More

CentOS 6安装配置LDAP管理工具:phpldapadmin和LAM

为OpenLDAP安装配置图片化管理工具的过程,这里记录一下,本文基于Centos6。本文中第2步和第三步分别介绍了phpldapadmin和LDAP Account Manager的安装方法,它们都是基于WEB的LDAP管理工具,可以任选其一安装,也可以两者都安装。其中LDAP Account Manager相对简单,比较适合新手。

1,安装epel源及基础软件包

根据系统版本打开相应的链接:
CentOS 5 32位:http://download.fedoraproject.org/pub/epel/5/i386/
CentOS 5 64位:http://download.fedoraproject.org/pub/epel/5/x86_64/
CentOS 6 32位:http://download.fedoraproject.org/pub/epel/6/i386/
CentOS 6 64位:http://download.fedoraproject.org/pub/epel/6/x86_64/
查找“epel”,应该会找到一个“epel-release-X-X.noarch.rpm”的软件包。下载,安装之。

$ yum install httpd php php-bcmath php-gd php-mbstring php-xml php-ldap php-pear

$ vim /etc/httpd/conf/httpd.conf #修改如下内容
……
DirectoryIndex index.html index.php
……


$ vim /etc/php.ini #修改如下内容
……
date.timezone = "Asia/Shanghai"
……

(more…)

Read More

SVN从Windows迁移至Linux

将多个SVN从一台Windows服务器, 迁移到Linux系统的过程, 记录一下, 本文的Linux版本为CentOS 6 64bit.

1,在Windows上导出SVN信息

svnadmin dump D:\SVN\NDS_BJ > D:\svnbak\NDS_BJ.bak
svnadmin dump D:\SVN\NDS_EVO > D:\svnbak\NDS_EVO.bak
svnadmin dump D:\SVN\NDS_FDC > D:\svnbak\NDS_FDC.bak

提示:
1, dump命令会导出每个版本的详细信息,保证了之前的历史信息不会丢失.
2, 该命令仅会导出版本信息,不会导出配置及用户名等信息,因此还需要单独备份conf目录.

2,在CentOS 6系统上安装配置SVN

yum install subversion
mkdir /data/svn
svnserve -d -r /data/svn/  #启动SVN,监听端口为3690
echo 'svnserve -d -r /data/svn/' >> /etc/rc.local

killall svnserve           #关闭SVN

初始化repository(项目库)

svnadmin create /data/svn/NDS_BJ    #建立repository

vim /data/svn/NDS_BJ/conf/svnserve.conf
取消如下几行的注释:
anon-access=none或者anon-access=read
auth-access=write
password-db=passwd
authz-db = authz

注意,取消注释时,要把每项前面的空格也删掉,否则客户端连接的时候会报出svnserve.conf:12: Option expected的错误. (more…)

Read More

解决CentOS6系统X11提示Fatal server error:no screens found

今天安装完CentOS-6.6-x86_64-minimal以后,想给它装个桌面,于是运行了yum groupinstall “Desktop”,按理说,应该是桌面环境应该可以正常运行了。但当运行start命令时,却遇到了如下错误:

Fatal server error: 
.......  
no screens found 
(EE)  
Please consult the CentOS support  
 at http://wiki.centos.org/Documentation 
 for help.  
(EE) Please also check the log file at "/var/log/Xorg.0.log" for additional information. 
(EE)  
Server terminated with error (1). Closing log file.

解决办法:

$ yum groupinstall -y 'X Window System'
$ rm -rf /etc/X11/xorg.conf
$ Xorg -configure              #会提示生成了新的配置文件xorg.conf.new
$ cp ~/xorg.conf.new /etc/X11/xorg.conf
$ startx
Read More