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 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级别定义如下:
– Halt,关机模式。不能将系统缺省运行级别设置为0,否则无法启动。 – Single,单用户模式。 - Full multi-user with display manager (GUI)。 - Full multi-user with display manager (GUI)。 - Full multi-user with display manager (GUI)。 - Full multi-user with display manager (GUI)。 – 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

出现可视化界面

Linux及安全——Linux基础实践的更多相关文章
- Linux课程实践一:Linux基础实践(SSH)
一.SSH服务 1. 安装SSH (1)查看是否已经安装过ssh服务 rpm -qa |grep ssh (2)进行安装 sudo apt-get install openssh-server Ubu ...
- Linux课程实践一:Linux基础实践(基础操作)
一.软件源维护 1. 基本操作 (1)查看源列表 sudo vim /etc/apt/sources.list deb:二进制软件安装包 deb-src:源码包 (2)备份软件源列表 sudo cp ...
- 实践一:Linux基础实践
一.Linux基础实践 1.1 1. 掌握软件源的维护方法,配置系统使用软件源镜像.掌握通过软件源来查找,安装,卸载,更新软件的方法. 这部分内容在许多学长学姐的报告里都有很详细的讲解,我在此就不赘述 ...
- Linux基础实践
Linux基础实践 1.1 应用安装 要求:掌握软件源的维护方法,配置系统使用软件源镜像.掌握通过软件源来查找,安装,卸载,更新软件的方法 备份原地址列表文件:sudo cp /etc/apt/sou ...
- Linux中sed的用法实践
Linux中sed的用法实践 参考资料:https://www.cnblogs.com/emanlee/archive/2013/09/07/3307642.html http://www.fn139 ...
- 【Linux系列】Linux基础知识整理
Linux操作系统在服务器领域广泛的使用到,作为一个后台开发工程师很有必要了解Linux相关的知识. 本篇日志是我学习Linux过程中的简单记录和总结.本着"理论够用,实践为主"的 ...
- linux服务器开发一 基础
注:本文仅限交流使用,请务用于商业用途,否则后果自负! Linux 1.Linux介绍 Linux是类Unix计算机操作系统的统称. Linux操作系统的内核的名字也是“Linux”. Linux这个 ...
- jprofiler_监控远程linux服务器的JVM进程(实践)
几天前写了一篇文章,jprofiler_监控远程linux服务器的tomcat进程(实践),介绍了使用jprofiler怎样监控远程linux的tomcat进程,这两天想了想,除了可以监控tomcat ...
- linux基础-第十四单元 Linux网络原理及基础设置
第十四单元 Linux网络原理及基础设置 三种网卡模式图 使用ifconfig命令来维护网络 ifconfig命令的功能 ifconfig命令的用法举例 使用ifup和ifdown命令启动和停止网卡 ...
随机推荐
- 安全初始化MySql服务器
我们在安装完MySql服务器,设置好MySql的root用户密码后,就直接开始使用了,其实这样的MySql服务器还存在着一些不安全因素, 本篇演示一下用命令mysql_secure_installat ...
- dubbo学习之服务消费者
1.简介 上节讲了如何发布一个dubbo服务,这节主要讲如何进行消费,创建一个消费者. 2.详细步骤 2.1 项目目录结构 2.2 创建maven项目 这里演示时其实通过一个main方法就可以了,没必 ...
- python sorted
python列表排序 python字典排序 sorted List的元素可以是各种东西,字符串,字典,自己定义的类等. sorted函数用法如下: sorted(data, cmp=None, key ...
- android JSON解析之JSONObject与GSON
1.写在前面 JSON数据是android网络开发中常见的数据格式,JSON最常见的传输方法是使用HTTP协议,关于android开发中HTTP协议的使用方法可参考我的另一篇随笔android网络编程 ...
- nginx设置反向代理后,页面上的js css文件无法加载
问题现象: nginx配置反向代理后,网页可以正常访问,但是页面上的js css文件无法加载,页面样式乱了. (1)nginx配置如下: (2)域名访问:js css文件无法加载: (3)IP访问:j ...
- JQ插件
什么是插件 插件(plugin)是JQuery的扩展(Extension),以JQuery的核心代码为基础,是一种遵循一定规范的应用程序接口编写出来的程序. 插件的引入 引入jquery.js文件 引 ...
- Eclipse修改Tomcat发布路径以及的配置多个Tomcat方法
最近放弃了使用Myeclipse,转而使用eclipse作为开发工具,确实Myeclipse集成了太多东西,使得开发人员的配置越来越少,这 不是个好事,使用eclipse后,有些地方就得自己去配置,比 ...
- NOIP2013普及组 -SilverN
T1 计数问题 题目描述 试计算在区间 1 到 n 的所有整数中,数字 x(0 ≤ x ≤ 9)共出现了多少次?例如,在 1 到 11 中,即在 1.2.3.4.5.6.7.8.9.10.11 中, ...
- 搭建appium的android环境
首先需要准备: 1.jdk(步骤不再啰嗦) 2.android SDK,下载地址:http://developer.android.com/sdk/index.html,下载sdk tools,可能需 ...
- HDU 5083 Instruction --模拟
题意:给出汇编指令,解释出编码或者给出编码,解释出汇编指令. 解法:简单模拟,按照给出的规则一步一步来就好了,主要是注意“SET”的情况,还有要输出的东西最好放到最后一起输出,中间如果一旦不对就可以及 ...