• Linux及安全——Linux基础实践


    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

     

    出现可视化界面

     

     

     

     

     

     

     

  • 相关阅读:
    启动eclipse报错 Could not create the Java Virtual Machine
    网站优化-HTML关键词代码使用
    [转载]我们应该更依赖手机一点
    跨域问题
    我研制的操盘机器人今天继续大获全胜2017-03-01
    昨日买的股票今日大获全胜,今日买的毫发无损,操盘机器人年后至今仅一天失误,超强,雄起
    机器人战胜人类操盘手,我研制三年的成果
    年后连续5天开门红,机器人越战越勇
    在家附近散个步(新昌),调整一下情绪,明天就要上班了
    今天开门红,好兆头
  • 原文地址:https://www.cnblogs.com/bonjourvivi/p/5422013.html
Copyright © 2020-2023  润新知