用SSL保Samba安全
编译带有SSL支持的samba,步骤如下:
1.得到、编译和安装SSLeay.可以在站点http://www.cryptsoft.com处得到SSLeay的最新版本。在配置带有SSL支持的samba之前必须进行这个步骤,否则无法编译Samba。
#./Configure linux-elf
CC =gcc
CFLAG =-DL_ENDIAN -DTERMIO -DBN_ASM -O3 -fomit-frame-pointer
EX_LIBS =
BN_MULW =asm/bn86-elf.o
DES_ENC =asm/dx86-elf.o asm/yx86-elf.o
BF_ENC =asm/bx86-elf.o
CAST_ENC =asm/cx86-elf.o
RC4_ENC =asm/rx86-elf.o
RC5_ENC =asm/r586-elf.o
MD5_OBJ_ASM =asm/mx86-elf.o
SHA1_OBJ_ASM =asm/sx86-elf.o
RMD160_OBJ_ASM=asm/rm86-elf.o
THIRTY_TWO_BIT mode
DES_PTR used
DES_RISC1 used
DES_UNROLL used
BN_LLONG mode
RC4_INDEX mode
生成文件:cat >/tmp/private.txt
生成随机数
# ssleay genrsa -rand /tmp/private.txt >/dev/null
2451 semi-random bytes loaded
Generating RSA private key, 512 bit long modulus
..+++++
.................................+++++
#./configure --with-ssl
# make clean
# make all
3.为你的samba服务器,创建X.509证书。
# cd /etc
# mkdir certificates
# chmod 700 certificates
找到CATOP=./demoCA,把它修改成:CATOP=/etc/certificates
下面你就要修改 /usr/local/ssl/lib/ssleay.cnf 文件
把[ CA_default ]字段dir = ./demoCA # Where everything is kept
改成:[ CA_default ]
dir = /etc/certificates # Where everything is kept
接着运行CA脚本:
#/usr/local/ssl/bin/CA.sh -newca
Making CA certificate ...
Using configuration from /usr/local/ssl/lib/ssleay.cnf
Generating a 1024 bit RSA private key
.............................+++++
.....................+++++
writing new private key to /etc/certificates/private/cakey.pem
Enter PEM pass phrase:
Verifying password - Enter PEM pass phrase:
接下来会填写这样的信息:
Country Name (2 letter code) [AU]:US
State or Province Name (full name) [Some-State]:California
Locality Name (eg, city) []:Sebastopol
Organization Name (eg, company) []:O'Reilly
Organizational Unit Name (eg, section) []:Books
Common Name (eg, YOUR name) []:John Doe
Email Address []:doe@ora.com
创建客户端证书:
# ssleay genrsa -des3 1024 >phoenix.key
1112 semi-random bytes loaded
Generating RSA private key, 1024 bit long modulus
........................................+++++
.............+++++
e is 65537 (0x10001)
Enter PEM pass phrase:
Verifying password - Enter PEM pass phrase:
# ssleay req -new -key phoenix.key -out phoenix-csr
Enter PEM pass phrase:
4.配置samba使用ssl,告诉samba服务器证书,以及似有密钥的位置,并设置其他需要的参数。
下一步我们修改samba的配置文件,位置在/etc/certificates
[global]
ssl = yes
ssl server cert = /etc/certificates/cacert.pem
ssl server key = /etc/certificates/private/cakey.pem
ssl CA certDir = /etc/certificates
保存退出后重启smb服务
# nmbd -D
# smbd -D
Enter PEM pass phrase:
经过上面的设置就可以放心的在Interner上安全的使用samba传输数据了。
本文出自 “李晨光原创技术博客” 博客,谢绝转载!
用SSL保Samba安全的更多相关文章
- 获得网址的Https的SSL证书并且保存到truststore
一.生成PEM文件 这里以邮件发送接口为例https://api.mailgun.net/v3/,首先运行以下命令: openssl s_client -host -prexit -showcerts ...
- 将samba加入到windows域《转载》
将samba加入到windows域 那什么是域呢? 一台Windows计算机,它要么隶属于工作组,要么隶属于域.所以说到域,我们就不得不提一下工作组,工作组是MS的概念,一般的普遍称谓是对等网. 工作 ...
- Samba通过Openldap统一认证
1.环境准备1.1.实验环境[root@moban ~]# cat /etc/redhat-releaseCentOS release 6.8 (Final)[root@moban ~]# uname ...
- SSL介绍与Java实例
有关SSL的原理和介绍在网上已经有不少,对于Java下使用keytool生成证书,配置SSL通信的教程也非常多.但如果我们不能够亲自动手做一个SSL Sever和SSL Client,可能就永远也不能 ...
- Samba文件服务器详细配置步骤
准备安装 环境:CentOS 6.3_x64bit 安装:Minimal(最小) 1.配置IP地址 2.挂载:[root@localhost ~]# mount -t iso9660 /dev/cdr ...
- Windows Azure Cloud Service (36) 在Azure Cloud Service配置SSL证书
<Windows Azure Platform 系列文章目录> 在某些时候,我们需要在Azure PaaS Cloud Service配置HTTPS连接.本章将介绍如何在本地创建证书,然后 ...
- SSL/TLS 高强度加密: 常见问题解答
关于这个模块 mod_ssl 简史 mod_ssl会受到Wassenaar Arrangement(瓦森纳协议)的影响吗? mod_ssl 简史 mod_ssl v1 最早在1998年4月由Ralf ...
- java ssl https 连接详解 生成证书
我们先来了解一下什么理HTTPS 1. HTTPS概念 1)简介 HTTPS(全称:Hypertext Transfer Protocol over Secure Socket Layer),是以安全 ...
- keytool生成证书与Tomcat SSL配置
转自:http://tomhat.iteye.com/blog/2087673 一.Keytool介绍 Keytool是一个Java数据证书的管理工具.Keytool将密钥(key)和证书(certi ...
随机推荐
- 003.ES2015和ES2016新特性--类.md
JavaScript使用的是基于原型的OO模型,用对象字面量或者函数来实例化对象,用原型链来实现继承. 这样对于数据传统C++.Java的OO范式的开发者来说,会感到比较困惑,于是从ES2015开始逐 ...
- Spring MVC模式示例(未采用解耦控制器)
Product package com.mstf.bean; import java.io.Serializable; /** * Product类,封装了一些信息,包含三个属性 * @author ...
- go语言中在变量后加上接口是什么意思?
如题刚刚开始学习go 语言有些不懂: a.Data = make(map[string]interface{}) 我认为它是在申请a.Data map为字符串类型的空间,那么它后面接一个空的inter ...
- centos通过yum安装jdk
安装之前先检查一下系统有没有自带open-jdk 命令: rpm -qa |grep java rpm -qa |grep jdk rpm -qa |grep gcj 如果没有输入信息表示没有安装. ...
- windos下安装多个mysql服务
最近需要使用Mysql制造大量数据,需要多个Mysql服务器.一开始的解决方案是使用多个windows机器.实体机不够,则用虚拟机来搞.但,,,,安装多个虚拟机…….好吧, 在网上查了下,有使用单个机 ...
- 外媒分析:iPhone销量低于预期是中国市场疲软影响的
根据外媒AppleInsider的报道,来自摩根士丹利(Morgan Stanley)的Katy Huberty是最新一位下调苹果目标股价的分析师,她在报告中写道,iPhone的销量低于预期,主要是因 ...
- python_webApp
提高开发效率:当更改代码后,不重启服务器就能使用新效果 参考链接:https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df ...
- caioj 1067动态规划入门(一维一边推5: 乘积最大(高精度版))
因为这里涉及到乘号的个数,那么我们可以用f[i][j]表示前i个位乘号为j个时的最大乘积 那么相比上一题就是多了一层枚举多少个乘号的循环,可以得出 f[i][r] = max(f[j - 1][r - ...
- 函数指针的转换 & C的注意点
再让我们看看<signal.h>中声明的signal函数void (*signal(int, void(*)(int)))(int)首先,用typedef简化,typedef void ( ...
- spark transform系列__groupByKey
这个操作的作用依据同样的key的全部的value存储到一个集合中的一个玩意. def groupByKey(): RDD[(K, Iterable[V])] = self.withScope { g ...