您的位置:首页 > 运维架构 > Linux

Linux及安全——Linux基础实践

2016-04-25 23:53 423 查看

Linux及安全——Linux基础实践

一、实践一:掌握软件源的维护方法,配置系统使用教育网内的软件源镜像。掌握通过软件源来查找,安装,卸载,更新软件的方法。

1.软件源的维护方法

Ubuntu的软件源列表存放在/etc/apt/sourcers.list,为了安全起见,我们在对源文件进行操作之前,先将软件源备份。

打开终端,输入命令

sudo cp /etc/apt/sources.list/ etc/apt/backup_sources.list


即把软件源备份的文件backup_sources.list存放在apt文件夹中



接下来,我们升级软件源,输入命令

sudo apt-get update


该命令用于对软件源进行更新,系统将自动从网上寻找资源并且下载。





升级软件版本,输入命令

sudo apt-get update &&sudo apt-get upgrade




查看源列表,输入命令

sudo gedit /etc/apt/sources.list




从上图可以看出,这个文件由注释和软源地址两部分组成。软件源的作用就是让系统自动在这些网址搜索所需软件,我们可以理解为使用apt-get命令就是linux平台下的一个软件商店,而软件源就是我们要下载的软件,其下载文件所在的目录。

2.配置系统使用教育网内的软件源镜像

常用的校内更新源

#电子科技大学

deb http://ubuntu.uestc.edu.cn/ubuntu/ natty main restricted universe multiverse
deb http://ubuntu.uestc.edu.cn/ubuntu/ natty-backports main restricted universe multiverse
deb http://ubuntu.uestc.edu.cn/ubuntu/ natty-proposed main restricted universe multiverse
deb http://ubuntu.uestc.edu.cn/ubuntu/ natty-security main restricted universe multiverse
deb http://ubuntu.uestc.edu.cn/ubuntu/ natty-updates main restricted universe multiverse
deb-src http://ubuntu.uestc.edu.cn/ubuntu/ natty main restricted universe multiverse
deb-src http://ubuntu.uestc.edu.cn/ubuntu/ natty-backports main restricted universe multiverse
deb-src http://ubuntu.uestc.edu.cn/ubuntu/ natty-proposed main restricted universe multiverse
deb-src http://ubuntu.uestc.edu.cn/ubuntu/ natty-security main restricted universe multiverse
deb-src http://ubuntu.uestc.edu.cn/ubuntu/ natty-updates main restricted universe multiverse

#中国科技大学

deb http://debian.ustc.edu.cn/ubuntu/ natty main restricted universe multiverse
deb http://debian.ustc.edu.cn/ubuntu/ natty-backports restricted universe multiverse
deb http://debian.ustc.edu.cn/ubuntu/ natty-proposed main restricted universe multiverse
deb http://debian.ustc.edu.cn/ubuntu/ natty-security main restricted universe multiverse
deb http://debian.ustc.edu.cn/ubuntu/ natty-updates main restricted universe multiverse
deb-src http://debian.ustc.edu.cn/ubuntu/ natty main restricted universe multiverse
deb-src http://debian.ustc.edu.cn/ubuntu/ natty-backports main restricted universe multiverse
deb-src http://debian.ustc.edu.cn/ubuntu/ natty-proposed main restricted universe multiverse
deb-src http://debian.ustc.edu.cn/ubuntu/ natty-security main restricted universe multiverse
deb-src http://debian.ustc.edu.cn/ubuntu/ natty-updates main restricted universe multiverse

#北京理工大学

deb http://mirror.bjtu.edu.cn/ubuntu/ natty main multiverse restricted universe
deb http://mirror.bjtu.edu.cn/ubuntu/ natty-backports main multiverse restricted universe
deb http://mirror.bjtu.edu.cn/ubuntu/ natty-proposed main multiverse restricted universe
deb http://mirror.bjtu.edu.cn/ubuntu/ natty-security main multiverse restricted universe
deb http://mirror.bjtu.edu.cn/ubuntu/ natty-updates main multiverse restricted universe
deb-src http://mirror.bjtu.edu.cn/ubuntu/ natty main multiverse restricted universe
deb-src http://mirror.bjtu.edu.cn/ubuntu/ natty-backports main multiverse restricted universe
deb-src http://mirror.bjtu.edu.cn/ubuntu/ natty-proposed main multiverse restricted universe
deb-src http://mirror.bjtu.edu.cn/ubuntu/ natty-security main multiverse restricted universe
deb-src http://mirror.bjtu.edu.cn/ubuntu/ natty-updates main multiverse restricted universe

#兰州大学

deb ftp://mirror.lzu.edu.cn/ubuntu/ natty main multiverse restricted universe
deb ftp://mirror.lzu.edu.cn/ubuntu/ natty-backports main multiverse restricted universe
deb ftp://mirror.lzu.edu.cn/ubuntu/ natty-proposed main multiverse restricted universe
deb ftp://mirror.lzu.edu.cn/ubuntu/ natty-security main multiverse restricted universe
deb ftp://mirror.lzu.edu.cn/ubuntu/ natty-updates main multiverse restricted universe
deb ftp://mirror.lzu.edu.cn/ubuntu-cn/ natty main multiverse restricted universe

#上海交通大学

deb http://ftp.sjtu.edu.cn/ubuntu/ natty main multiverse restricted universe
deb http://ftp.sjtu.edu.cn/ubuntu/ natty-backports main multiverse restricted universe
deb http://ftp.sjtu.edu.cn/ubuntu/ natty-proposed main multiverse restricted universe
deb http://ftp.sjtu.edu.cn/ubuntu/ natty-security main multiverse restricted universe
deb http://ftp.sjtu.edu.cn/ubuntu/ natty-updates main multiverse restricted universe
deb http://ftp.sjtu.edu.cn/ubuntu-cn/ natty main multiverse restricted universe
deb-src http://ftp.sjtu.edu.cn/ubuntu/ natty main multiverse restricted universe
deb-src http://ftp.sjtu.edu.cn/ubuntu/ natty-backports main multiverse restricted universe
deb-src http://ftp.sjtu.edu.cn/ubuntu/ natty-proposed main multiverse restricted universe
deb-src http://ftp.sjtu.edu.cn/ubuntu/ natty-security main multiverse restricted universe
deb-src http://ftp.sjtu.edu.cn/ubuntu/ natty-updates main multiverse restricted universe


其中第一部分DebType表示Deb软件包类型

deb表示二进制软件包

deb-src表示源码包

第二部分Address Type表示访问地址类型,常用类型有:http,ftp,file,cdrom等等

第三部分Distribution表示Ubuntu的各个发行版本,例如dapper,feisty。

第四部分Compomet表示软件包组件类别,是由技术支持程度不同而划分的类型,可选择main,restricted,universe和multisive中的一种或多种,一般使用main。

(1)方法一:自动配置

点击Ubuntu系统右上角的菜单



单击软件更新,出现“更新管理器”界面,单击左下方的设置,出现“软件源”菜单,选择后两个选项



单击“添加”按钮,在新窗口的输入框中添加软件源,如下图添加:

deb http://debian.ustc.edu.cn/ubuntu/ natty main restricted universe multiverse




(2)方法二:手动配置

在终端中输入以下命令打开软件源文件sources.list并编辑

sudo gedit /etc/apt/sources.list


在文件中粘贴新的源地址



保存退出,在终端中输入以下命令,更新源信息

sudo apt-get update




3.掌握通过软件源来查找,安装,卸载,更新软件的方法

(1)查找包含部分关键字的软件包

sudo apt-cache search packagename


以skype软件为例



(2)安装软件

sudo apt-get install packagename




(3)卸载软件

sudo apt-get remove packagename




(4)升级软件包

sudo apt-get -u install packagename




因为是最新安装的软件包,尚且无法升级。

二、实践二:掌握Linux权限管理的概念。掌握与权限管理相关的9bit的含义与设置方法。掌握chmod,chown指令的使用。掌握用户与用户组的维护方法。修改开机脚本或编写脚本。理解并修改PATH环境变量。

1.Linux权限管理的概念

Linux相比于Windows是一个多用户多任务操作系统,即可以在系统上建立多个用户,而多个用户可以在同一时间内登录同一个系统执行各自不同的任务。为保证互不影响,Linux进行文件权限划分与管理,每个用户在权限允许的范围内完成不同的任务。用户权限分为读,写和执行三种。一般文件只有读写权限,可执行文件增加了执行权限。

2.与权限管理相关的9bit的含义与设置方法



Linux中文件的拥有者可以把文件的访问属性设成3种不同的访问权限:可读(r)、可写(w)和可执行(x)。

文件有3个不同的用户级别:文件拥有者(u)、所属的用户组(g)和系统里的其他用户(o)。

第一个字符显示文件的类型。

“-”表示普通文件。

“d”表示目录文件。

“l”表示链接文件。

“c”表示字符设备。

“b”表示块设备。

“p”表示命名管道,比如FIFO文件(先进先出)。

“f”表示堆栈文件,比如LIFO(后进先出)。

“s”表示套接字。


第一个字符之后有三个三位字符组:

第一个三位字符组表示文件拥有者(u)对该文件的权限。

第二个三位字符组表示文件用户组(g)对该文件的权限。

第三个三位字符组表示系统其他用户(o)对该文件的权限。

若该用户组对此没有权限,一般显示“-”字符。

注意:目录权限和文件权限有一定的区别。对于目录权限而言,r代表允许列出该目录下的文件和子目录,w代表允许生成和删除该目录下的文件,x代表允许访问该目录。

3.chmod,chown指令的使用

(1)chmod

作用:改变一个或多个文件的存取模式

<1>用包含字母和操作符表达式的文字设定法
格式:chmod [who] [opt] [mode] 文件/目录名

其中who表示对象,是以下字母中的一个或组合:

u:表示文件所有者
g:表示同组用户
o:表示其它用户
a:表示所有用户
opt则是代表操作,可以为:
+:添加某个权限
-:取消某个权限
=:赋予给定的权限,并取消原有的权限


而mode则代表权限:

r:可读
w:可写
x:可执行


例如:编写一个简单地脚本文件test.sh,因为脚本文件不能直接执行,只能dash test.sh来执行指令,因为test.sh没有执行权限而dash有。这里我们可以测试chmod指令,为test.sh增加执行权限之后,就可以直接执行test.sh了。



直接执行./test.sh,权限不够



使用chmod命令,输入如下命令,再输入./test.sh,可以执行

chmod u+rwx test.sh




<2>用数字设定法
格式:chmod [mode] 文件名

mode的取值:

我们将rwx看成二进制数,如果有则有1表示,没有则有0表示,那么rwx r-x r- -则可以表示成为:

111 101 100

再将其每三位转换成为一个十进制数,就是754。

如上图所例,输入命令ls -l查看其9bit时,为:

rwx rw- r--


就可以表示为111 110 100

转换成十进制数就是764

所以我们执行命令:

chmod 764 test.sh




4.用户与用户组的维护方法

更改root用户方法

sudo su


创建用户

useradd 用户名

cat /etc/passwd(在 /etc/passwd 文件中增添了一行记录)






创建组

groupadd 组名

grep 组名 存放地址(/etc/group)




删除用户

userdel 用户名




删除组

groupdel 组名




设置密码

passwd 用户名




5.修改开机脚本或编写脚本

(1)进入/etc/init文件夹,在其中找到rc-sysinit.conf文件,用root权限打开(此处如果不用root权限,则为只读模式,无法进行编辑)



输入如下命令:





打开文件后,找到第14行,会看到env DEFAULT_RUNLEVEL=2

这条语句的意思是指系统当前启动后runlevel是2,在这里可以将数字修改一下,就可实现切换用户模式的基本操作了。

Ubuntu的runlevel级别定义如下:

0 – Halt,关机模式。不能将系统缺省运行级别设置为0,否则无法启动。

1 – Single,单用户模式。

2 - Full multi-user with display manager (GUI)。

3 - Full multi-user with display manager (GUI)。

4 - Full multi-user with display manager (GUI)。

5 - Full multi-user with display manager (GUI)。

6 – Reboot,重启。不能将系统缺省运行级别设置为6,否则会一直重启。

可以发现2~5级是没有任何区别的。他们为多用户模式


(2)修改/etc/rc2.d/Sxxgdm 为 /etc/rcx.d/Kxxgdm

可用命令:

sudo mv Sxxgdm Kxxgdm




(3)删除某开机自启动文件,可用指令

sudo update-rc.d –f xxx remove(其中xxx是文件名中除了S和K以外的非数字部分)




6.理解并修改PATH环境变量

环境变量是提供给系统及用户应用程序使用的一些值,比如系统目录位置、临时文件目录等。

这里把/etc/apache/bin目录添加到PATH中为例,方法如下:

(1)#PATH=$PATH:/etc/apache/bin

使用这种方法,只对当前会话有效,也就是说每当登出或注销系统以后,PATH 设置就会失效



(2)#vi /etc/profile

在适当位置添加 PATH=$PATH:/etc/apache/bin (注意:= 即等号两边不能有任何空格)





这种方法最好,除非手动强制修改PATH的值,否则将不会被改变

三、实践三:正确安装SSH服务,并理解配置文件。用命令行启动或停止相应服务,并从测试可正常从远程接入

1.安装SSH服务,并理解配置文件

使用apt-get命令安装SSH服务器

sudo apt-get install openssh-server




开启SSH服务



2.用命令行启动或停止相应服务,并从测试可正常从远程接入

输入命令,启动服务

service ssh status




输入命令,终止服务

service ssh stop




更改允许root登录权限:





在主机或其他终端中使用ssh服务(本例中使用windows中的putty软件接入)



连接成功:



四、实践四:利用用户名/密码 与 证书 分别实现身份验证

将之前使用putty登陆的IP地址保存,再次点击登录是失败的,我们安装证书之后就可以不用输入密码,登陆成功了。

首先,在终端中输入命令:

ssh-keygen –t rsa


然后直接回车-回车-回车



然后,再~.ssh/就会生成id_rsa,id_rsa.pub这个两个文件



使用cat指令,将公钥信息拷贝至.ssh/authorized_keys 内,使其在WinSCP中可见





COPY出来这两个文件,在WIN下面生成PPK文件,便可以用来认证登陆;

打开WinSCP,打开左下角的工具,运行PuTTYgen



打开file-Load Private Key,选择所有文件,选择id_rsa文件,





选择Save private key

填写文件名,保存私钥

在WinSCP的登录界面,点击编辑,高级,验证

密钥文件中选择刚刚生成的私钥文件



点击保存,然后登录,这回就可以自动登录





五、实践五:使用WinSCP客户端连接并进行文件传输;Windows中的PUTTY可运行XWindows程序

1.使用WinSCP客户端连接并进行文件传输

使用WinSCP传输文件,将我编写的test.sh拷贝到windows桌面



2.Windows中的PUTTY可运行XWindows程序

安装Xming-6-9-0-31-setup.exe,双击图标打开软件,在后台运行。

然后配置putty,勾选Enable X11 forwarding



然后使用putty的ssh与linux主机建立连接



在登录的ssh的shell中输入iceweasel=即可在windows上看到linux主机上的浏览器在windows上运行了



输入ls,运行加密文件gedit id_rsa



出现可视化界面

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: