一、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
|