一、SSH(Secure Shell,安全的命令解释器)
SSH服务为客户机提供安全的Shell环境,用于远程管理,默认端口:TCP 22;SSH是目前应用最为广泛的服务器远程管理方式.
1、SSH用户登陆验证方式分为两种:
密码验证:输入用户名和密码
密钥对验证:在客户机中生成的公钥、私钥
2、服务器端主配置文件:/etc/ssh/sshd_config
1
2
3
4
5
6
7
8
9
10
11
12
13
|
Port 22
#监听的端口(默认22)
ListenAddress 192.168.1.10
#监听 的IP地址(默认监听所有IP)
PermitRootLogin no
#禁止ROOT用户远程登录
LoginGraceTime 2m
#限制用户登录验证过程的时间(默认为2分钟)
MaxAuthTries 6
#限制用户登录验证过程的最大重试次数
RSAAuthentication
yes
#开启rsa认证
PubkeyAuthentication
yes
#开启密钥对验证
AuthorizedKeysFile .
ssh
/authorized_keys
#指定公钥位置,默认在用户宿主目录下
PermitEmptyPasswords no
#禁止密码为空的用户远程登录
PasswordAuthentication
yes
#启用密码验证
DenyUsers
test
#拒绝test用户远程登录系统,其他均允许
AllowUsers
test
admin@10.0.0.10
#允许test在任何IP的主机上远程登录,允许admin只能在主机10.0.0.10登录,其他均拒绝(不要同时使用AllowUsers和DenyUsers配置)
UseDNS no
#DNS查找,客户端连接服务器时,服务器会根据客户端的IP地址进行PTR反向查询,查询到客户端主机名,再进行DNS正向A记录查询,这样连接时就会等待一下,要关闭此选项会提高SSH连接速度。
|
3、ssh命令远程登陆
1
2
3
|
方式1:
ssh
用户名@IP
方式2:
ssh
-l 用户名 IP
方式3:
ssh
-p 端口 用户名@IP
#不加-p,默认使用22端口
|
4、使用scp命令远程复制文件或目录(需要安装openssh-clients)
1
2
3
|
方式1:
scp
用户名@IP:源文件 目标路径
方式2:
scp
本地文件 用户名@IP:目标路径
方式3:
scp
-r 本地目录 用户名@IP:目标路径
#-r复制目录下所有文件
|
5、使用客户端工具远程登陆
方式1:putty #字符页面
方式2:winscp #图形页面工具,一般用于下载
6、配置SSH密钥对认证登陆
1>.在客户机上创建密钥对
1
|
ssh
-keygen -t rsa
#一路回车
|
2>.登陆ssh服务器,创建.ssh目录及设置权限
1
2
|
mkdir
/root/
.
ssh
chmod
700
/root/
.
ssh
|
3>.将公钥上传到服务器并重命名为authorized.keys
1
|
scp
/root/
.
ssh
/id_rsa
.pub root@192.168.0.203:
/root/
.
ssh
/authorized_keys
#id_rsa.pub可以追加多个客户端的公钥
|
4>.设置ssh服务器,开启密钥对验证,关闭密码验证
1
2
3
4
5
|
RSAAuthentication
yes
PubkeyAuthentication
yes
AuthorizedKeysFile .
ssh
/authorized_keys
PasswordAuthentication no
service sshd restart
|
5>.验证登陆
1
|
ssh
root@192.168.0.203
#不用输入密码直接登陆到ssh服务器
|
二、tcp_wrappers机制
1、tcp_wrappers原理图
2、安装tcp_wrappers
yum install tcp_wrappers.x86_64
主配置文件:/etc/hosts.allow,/etc/hosts.deny
3、安全机制实现方式
方式1:通过tcpd主程序对其他服务进行包装,需要运行tcpd
方式2:由网络服务程序调用libwrap.so.*链接库,不需要运行tcpd #更为常用
ldd命令查看程序的共享库:
1
2
|
ldd
/usr/sbin/sshd
|
grep
"libwrap"
libwrap.so.0 =>
/lib64/libwrap
.so.0 (0x00007fd9ee03e000)
|
4、配置访问控制策略
配置格式:服务器程序列表:客户机地址列表
服务器程序名有vsftpd,sshd,telnetd等以逗号分隔,ALL表示所有程序
客户机地址:单个IP,一个网段(192.168.1.0/255.255.255.0)以逗号分隔,ALL表示所有地址
5、tcp_wrappers访问控制原则
首先检查 hosts.allow 文件,若找到相匹配的策略,则允许访问
否则继续检查 hosts.deny 文件,若找到相匹配的策略,则拒绝访问
如果两个文件中都没有相匹配的策略,则允许访问
三、使用VNC Server远程桌面
VNC软件主要由两个部分组成:VNC Server及VNC Viewer。将VNC SERVER安装在被控制的主机上,才能在主控端执行VNC Viewer控制被控端。
VNC服务使用的TCP端口号从5900开始,例如:桌面号是1,则使用的端口号是5901,桌面号是2,则端口号为5902,VNC Server相关文件都保存在/home/user目录下
1、安装VNC Server
1
|
yum
install
-y tigervnc-server
|
2、修改配置VNC
1
2
3
4
|
vi
/etc/sysconfig/vncservers
VNCSERVERS=
"1:root,2:user"
#1为桌面号,客户端远程使用需要添加上
VNCSERVERARGS[1]=
"-geometry 800x600 -alwaysshared"
#-alwaysshared代表允许多用户同时登陆
VNCSERVERARGS[2]=
"-geometry 800x600"
|
3、设置VNC登陆密码
1
2
|
vncserver :1
#root用户密码设置
su
- user,vncserver :2
#普通用户设置
|
4、使用vnc viewer登陆
1
2
|
service vncserver start
chkconfig vncserver on
|
停止vnc server:
1
2
|
vncserver -
kill
:1
vncserver -
kill
:2
|
四、磁盘管理
1、查看系统中的磁盘设备:fdisk -l [磁盘设备]
Device Boot Start End Blocks Id System
Device:磁盘设备分区名
Boot:是不是引导分区,*则是
Start:该分区在磁盘中的起始位置(柱面数)
End:该分区在磁盘中的结束位置(柱面数)
Blocks:该分区大小,以blocks(块)为单位,默认块大小是1024字节
Id:分区类型的ID标记号,对于EXT3分区为83,LVM分区为8e。
System:分区类型
2、分区格式化新磁盘设备
1
|
fdisk
-cu 磁盘设备(例如:
/dev/sdb
)
#考试时候要用-cu参数
|
-u:搭配"-l"参数列表,会用分区数目取代柱面数目,来表示每个分区的起始地址,即改变分区大小的显示方式
-c:标识一个分为DOS兼容的分区
3、交互模式中常用命令
m:查看操作指令的帮助信息
p:列表查看分区信息
n:新建分区
d:删除分区
t:变更分区类型
w:保存分区设置并退出
q:放弃分区设置并退出
变更磁盘(特别是正在使用的硬盘)的分区设置以后,新的分区在/dev下查看不到,partprobe命令也不能把新分区调出来。只有两种方法,一个是重启,另一个就是partx -a /dev/硬盘设备。
4、格式化并创建文件系统
1
2
3
4
5
6
7
8
9
10
11
|
mkfs.ext4
/dev/sdb1
mkdir
/data
mount
/dev/sdb1
/data
#将分区挂载到/data
-----------------------------------------------------
也可以使用tune2fs将ext3转换ext4
tune2fs -O extent,uninit_bg,dir_index
/dev/sdb1
e2fsck
/dev/sdb1
fsck
-pf
/dev/sdb1
df
-h
#查看是否成功
使用tune2fs将ext2转换ext3
tune2fs –j
/dev/sdb1
|
5、增加交换分区
1>.添加交换分区文件为2G
1
|
dd
if
=
/dev/zero
of=
/opt/swap
bs=2048M count=1
|
2>.格式化为交换分区空间
1
|
mkswap
/opt/swap
|
3>.启动交换区空间
1
|
swapon
/opt/swap
|
4>.查看是否生效(确定已经添加成功)
1
2
3
|
free
-m
-/+ buffers
/cache
: 38 452
Swap: 3039 5 3034
|
5>.设置开机自动加载新增加的swap分区(也可以使用UUID挂载)
1
2
|
vi
/etc/fstab
/opt/swap
swap swap defults 0 0
|
五、磁盘配额
1、设置磁盘配额条件:需要linux内核支持,安装quota软件包
2、磁盘配额特点
作用范围:文件系统(分区)
限制对象:用户,组
限制类型:磁盘容量,文件数量
限制方法:软限制,硬限制
基本步骤:
1>.启用文件系统的配额支持:添加usrquota、grpquota挂载参数,修改/etc/fstab文件,重启系统
1
2
3
|
vi
/etc/fstab
/dev/sdb1
/data
ext4 defaults,usrquota,grpquota 1 2
#1是开机启动被fsck扫描,0为不检查
mount
-o remount
/data
#重新挂载
|
2>.quotacheck命令检测磁盘配额并创建配额文件
1
|
quotacheck
-augcv
#执行完后/data目录会生成aquota.group,aquota.user
|
-u、-g:检测用户、组配额
-c:创建配额数据文件
-v:显示执行过程信息
-a:检测所有可用的分区
3>.设置用户或组的限制
1
2
|
edquota -u 用户
edquota -g 组
|
在实际应用中,一般只对用户最磁盘使用的大小,不用设置用户对文件的多少,硬限制应大于软限制。
设置组限制,需要把用户的基本组加入需要设置的组里,组配额对附属组是没有效果的。
4>.启动或关闭磁盘配额功能
1
2
3
4
|
quotaon -ugv
/data
quotaoff -ugv
/data
quotaon -augv
#启动所有可用分区磁盘配额功能
quotaoff -augv
|
5>.查看磁盘配额使用情况
1
2
3
4
|
quota
-u 用户
quota
-g 组
repquota
/data
repquota -a
|
六、制作ISO文件
1、从光盘中制作ISO文件:
把光盘放入光驱中(不需要挂载光盘)
1
|
cp
/dev/cdrom
mycd.iso
|
2、使用目录文件制作ISO文件:
1
|
mkisofs
-r -o my.iso
/data
|
挂载ISO文件:
命令挂载:
1
|
mount
-o loop -t iso9660 my.iso
/mnt
|
自动挂载:
1
|
mount
-o loop my.iso
/mnt
|