# Server02
# Network
Device | Hostname | System | FQDN | IP Adress | Service |
---|---|---|---|---|---|
Server02 | Server02 | Linux server | Server02.sdskills.com | 172.16.100.202 | Fto(vsftpd)、Samba Mail(postfix、dovecot) |
修改 /etc/network/interfaces
文件,增加如下语句
auto ens35
iface ens35 inet static
address 172.16.100.202/25
gateway 172.16.100.254
2
3
4
环境不同,网卡号不同,根据环境修改,使用命令 ip link 可以查看
修改 /etc/hosts
文件,将 127.0.0.1 debain
修改为如下语句
127.0.0.1 Server02
172.16.100.202 Server02.sdskills.com Server02
2
修改 /etc/hostname
文件,将内容改为对应主机名
Server02
新建 /etc/resolv.conf
文件,添加如下内容
nameserver 172.16.100.201
# Ftp(vsftpd)
使用 ftp 服务上传网页代码
- 使用 vsftpd 服务
- ftp 上传文件的根目录即为 web 服务器的网站根目录
- ftp 登录的用户为 ftpuser
- 通过 ftp 上传的文件用户为 webuser,文件权限为 644,目录权限为 755
安装 vsftpd
apt install -y vsftpd db5.3-util ftp
创建用户
useradd -m webuser
创建 ftpuser 虚拟用户,编辑 /etc/vuser
ftpuser
Skill21!
2
用户文件加密
db5.3_load -T -t hash -f /etc/vuser /etc/vuser.db
修改 /etc/vsftpd.conf
文件,取消第31行注释,增加如下内容
guest_enable=YES
guest_username=webuser
write_enable=YES
anon_umask=022
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
local_root=/data/share/htdocs/skills
2
3
4
5
6
7
8
将 /etc/vsftpd.conf
文件的第 145 行修改为如下语句
pam_service_name=vsftpd.vu
重启 vsftpd
systemctl restart vsftpd
# Samba
安装与配置 Samba 共享服务
创建共享目录为 /share/public 的共享目录
- 共享名为 public
- 仅支持匿名用户的只读访问(请在该目录存放一个文件名为file.txt),文件内容为“Test File”以便于测试)
创建目录为 /share/files 的共享目录
- 共享名为 files
- 创建 zhangsan,wangwu 两个用户,密码均为 Skills39,并且都能从 client 客户端登录访问到该共享目录并上传文件
- zhangsan 用户可以查看和删除所有人的文件按
- wangwu 用户智能查看和删除自己的文件,不能查看和删除别人的文件
安装 Samba 服务
apt install -y samba
创建用户
useradd zhangsan
useradd wangwu
2
设置 samba 用户的密码
smbpasswd -a zahngsan
smbpasswd -a wangwu
2
创建共享目录
mkdir -p /share/public
mkdir -p /share/files
2
创建测试文件
echo "Test File" > /share/public/file.txt
设置文件夹权限
chmod o+t /share/public
设置文件夹的所有者
chown zhangsan /share/files
创建 admin 用户组
groupadd admin
设置文件夹的所有组
chown :admin /share/files/
将用户 wangwu 加入 admin 组
gpasswd -a wangwu admin
设置文件夹权限
chmod g+s /share/files/
编辑 /etc/samba/smb.conf
文件,在文件末尾添加如下内容
[public]
comment = public
path = /share/public
browseable = yes
read only = yes
guest ok = no
[files]
comment = files
path = /share/files
valid users = zhangsan,wangwu
writable = yes
create mask=0640
2
3
4
5
6
7
8
9
10
11
12
13
重启 samba 服务
systemctl restart smbd
Postfix
- sdskills.com 的邮件发送服务器
- 支持 smtps(465) 协议连接,使用 Rserver 颁发的证书,证书路径为 /CA/cacert.pem
- 创建邮箱账户 “user1 ~ user99”(共99个用户),密码为 Skill21!
Devecot
- sdskills.com 的右键接受服务器
- 支持 imaps(993) 协议连接,使用 Rserver 颁发的证书,证书路径为 /CA/cacert.pem
- 请保留至少两个用户以成功登录并能正常收发邮件,以方便测试
编辑 /etc/ssl/openssl.cnf
文件
dir = /CA
state0rProvinceName = optional
organizationName = optional
2
3
创建 /CA
并切换至 /CA
mkdir /CA
cd /CA
2
创建私钥
openssl genrsa -out mail.key 4096
生成证书申请
openssl req -new -key mail.key -out mail.csr
通过 SCP 将证书申请发送至 Rserver
scp /CA/mail.csr 172.16.100.254:/CA
如下操作在 Rserver 上进行
cd /CA
openssl x509 -req -in mail.csr -CA /CA/cacert.pem -CAkey /CA/private/cakey.pem -CAcreateserial -out mail.crt
scp mail.crt 172.16.100.202:/CA
scp cacert.pem 172.16.100.202:/CA
2
3
4
安装 postfix 服务
apt install -y postfix
编辑 /etc/postfix/main.cf
文件
smtpd_tls_cert_file=/CA/mail.crt
smtpd_tls_key_file=/CA/mail.key
home_mailbox = Maildir/
myorigin = sdskills.com
mydestination = $myhostname, sdskills.com, Server02, localhost.localdomain, localhost mail.sdskills.com
mynetworks = 0.0.0.0/0
2
3
4
5
6
编辑 /etc/postfix/master.cf
文件,取消第 29 行和第 31 行注释
smtps inet n - y - - smtpd
-o smtpd_tls_wrappermode=yes
2
重启postfix服务
systemctl restart postfix
安装 dovecot
apt install -y dovecot-imapd
编辑 /etc/dovecot/dovecot.conf
文件,取消第 30 行、第 48 行注释,并修改为如下内容
listen = *
login_trusted_networks = 0.0.0.0/0
protocols = imaps
2
3
编辑 /etc/dovecot/conf.d/10-mail.conf
文件,将第 30 行修改为如下内容
mail_location = maildir:~/Maildir
编辑 /etc/dovecot/conf.d/10-ssl.conf
文件,将第 12 - 13 行修改为如下内容
ssl_cert = </CA/mail.pem
ssl_key = </CA/mail.k
2
新建一个 shell 脚本文件,写入如下内容批量创建用户
#!/bin/bash
for i in {1..99}
do
useradd -m -s /bin/false "user$i"
echo "user$i:Skill21!" |chpasswd
done
2
3
4
5
6