设为首页 收藏本站

运维网

查看: 574|回复: 0

[经验分享] open***+mysql+pam 构建强大的***系统

[复制链接]

尚未签到

发表于 2018-9-27 08:35:13 | 显示全部楼层 |阅读模式
  open***+mysql+pam
  本次为新的生产环境部署系统而采用了这个方案,陆续会将实际的生产架构整理出来.由于涉及到公司的各种敏感信息,已经将IP做了替换中途可能有出入 敬请谅解。等我找时间画图出来一并奉上。
  如果有根本上的问题,请大家指正。
  本次为了测试使用了如下的软件版本:
  epel-release-6-8.noarch.rpm
  lzo-2.03.tar.gz
  open***-2.2.2.tar.gz
  open***-2.0.7.tar.gz
  open***-2.2.1-install.exe
  
  1  安装epel第三方源:
wget http://mirror.neu.edu.cn/fedora/epel/6/i386/epel-release-6-8.noarch.rpm  
rpm -ivh epel-release-6-8.noarch.rpm
  2  安装各种依赖关系:
yum -y install gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers  3  安装
yum install pam_krb5 pam_mysql pam pam-devel  
yum install mysql mysql-server mysql-devel mysql-libs
  4  安装lzo:
wget http://www.oberhumer.com/opensource/lzo/download/lzo-2.03.tar.gz  
cd lzo-2.03 && ./configure && make && make install
  5  添加路径:
cat>>/etc/ld.so.conf GRANT ALL ON ***.* TO ***@localhost>  
Query OK, 0 rows affected (0.00 sec)
  
mysql> flush privileges;
  
Query OK, 0 rows affected (0.00 sec)
  
mysql> use ***;
  
Database changed
  
mysql>  CREATE TABLE ***user (
  -> name char(20) NOT NULL,
  -> password char(128) default NULL,
  -> active int(10) NOT NULL DEFAULT 1,
  -> PRIMARY KEY (name)
  -> );
  
Query OK, 0 rows affected (0.30 sec)
  
mysql> insert into ***user (name,password) values('user1',password('123456'));
  
Query OK, 1 row affected (0.02 sec)
  10 创建pam用于验证:
###创建pam验证配置文件:  
vim /etc/pam.d/open***
  
auth sufficient pam_mysql.so user=*** passwd=***123 host=localhost db=*** table=***user usercolumn=name passwdcolumn=password where=active=1 sqllog=0 crypt=2
  
account required pam_mysql.so user=*** passwd=***123 host=localhost db=*** table=***user usercolumn=name passwdcolumn=password where=active=1 sqllog=0 crypt=2
  
#crypt(0) -- Used to decide to use MySQL's PASSWORD() function or crypt()
  
#0 = No encryption. Passwords in database in plaintext. NOT recommended!
  
#1 = Use crypt
  
#2 = Use MySQL PASSWORD() function
  11 测试pam和mysql的连接:
yum install cyrus-sasl cyrus-sasl-plain cyrus-sasl-devel cyrus-sasl-lib cyrus-sasl-gssapi  
/etc/init.d/saslauthd restart
  12 open*** 2.0以上验证会出问题,需要编译低版本的模块:
wget http://down1.chinaunix.net/distfiles/open***-2.0.7.tar.gz  
tar -zxvf open***-2.0.7.tar.gz
  
cd open***-2.0.7/
  
./configure
  
cd plugin/auth-pam/
  
make
  
cp open***-auth-pam.so /etc/open***/
  13  测试连接:
###显示如下内容即为正常:  
[root@localhost 2.0]# testsaslauthd -u user1 -p 123456 -s open***
  
0: OK "Success."
  14  创建并修改open***的配置文件:
cp /opt/src/open***-2.2.2/sample-config-files/server.conf /etc/open***/  15  配置文件的内容如下(取出了所有的注释部分)
vim server.conf  
###内容如下:
  
port 1194
  
proto udp
  
dev tun
  
ca /etc/open***/easy-rsa/2.0/keys/ca.crt
  
cert /etc/open***/easy-rsa/2.0/keys/server.crt
  
key /etc/open***/easy-rsa/2.0/keys/server.key
  
dh /etc/open***/easy-rsa/2.0/keys/dh1024.pem
  
tls-auth /etc/open***/easy-rsa/2.0/keys/ta.key 0
  
server 10.8.0.0 255.255.255.0
  
ifconfig-pool-persist ipp.txt
  
push "redirect-gateway def1"
  
push "dhcp-option DNS 10.8.0.1"
  
client-to-client
  
keepalive 10 120
  
comp-lzo
  
persist-key
  
persist-tun
  
status open***-status.log
  
log         open***.log
  
verb 3
  
client-cert-not-required
  
username-as-common-name
  
plugin ./open***-auth-pam.so /usr/local/open***/sbin/open***
  16  开启内核路由转发:
vim /etc/sysctl.conf  
net.ipv4.ip_forward = 0   改成 net.ipv4.ip_forward = 1
  
sysctl -p
  17  设置防火墙的端口转发:
###iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -j SNAT --to-source 服务器的ip  
iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
  
iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -j SNAT --to-source 192.168.80.151
  18  保存并重启iptables:
service iptables save  
service iptables restart
  19  创建启动脚本:
cp -f /root/open***-2.2.2/sample-scripts/open***.init /etc/init.d/open***vim /etc/init.d/open***  
###编译安装的需要将第69行改成:
  
open***_locations="/usr/local/open***/sbin/open*** /usr/sbin/open*** /usr/local/sbin/open***"
  
chkconfig --add open***
  
chkconfig open*** on
  
/etc/init.d/open*** start
  ------------------至此服务端配置完成---------------
  下载open***客户端:
http://swupdate.open***.org/community/releases/open***-2.2.1-install.exe  客户端的安装配置:
  在服务端操作将ca.crt ca.key ta.key 拷贝到客户端的conf目录下面:
  C:\Program Files (x86)\Open***\config
  新建文件以.o*** 为结尾,并输入以下内容(remote服务器外网网卡地址):
client  
dev tun
  
proto udp
  
remote 192.168.80.151 1194  ##服务端的IP
  
resolv-retry infinite
  
nobind
  
persist-key
  
persist-tun
  
ca ca.crt
  
tls-auth ta.key 1
  
ns-cert-type server
  
comp-lzo
  
verb 5
  
auth-user-pass
  拨号-->输入mysql里面添加的用户名:user1 123456 -->OK
  右下角出现的2个小电脑 变成绿色的 即表示连接到open***服务器上,在本地cmd执行ipconfig
  查看是否得到了open*** 设置的网段地址。



运维网声明 1、欢迎大家加入本站运维交流群:群①:263444886群②:197202523群③:485755530群④:201730672群⑤:202807635运维网交流群⑥:281548029
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、其他单位或个人使用、转载或引用本文时必须注明原文的出处
4、如本帖侵犯到任何版权问题,请立即告知本站,本站将及时予与删除并致以最深的歉意
5、运维网 - 服务您的运维操作管理专家!
6、联系人Email:admin@yunvn.com 网址:www.iyunv.com

点击关注更多内容
您需要登录后才可以回帖 登录 | 立即注册  

本版积分规则  允许回帖邮件提醒楼主

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服 E-mail:kefu@yunvn.com

本站由青云提供云计算服务

运维网--中国最专业的运维工程师交流社区

京ICP备14039699号-1 Copyright © 2012-2018

使用手机软件扫描微信二维码

关注我们可获取更多热点资讯

Good good study day day up !


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


独家合作伙伴: 青云cloud

快速回复 返回顶部 返回列表