当前位置:维易网 > 操作系统 > 其他系统 > 正文

在Ubuntu系统中文件进行加密传输

随着互联网的普及,很多公司在各地的分公司都经常需要通过互联网共享或传输一些重要的数据或文件。在网络安全问题日益突出的今天,如何保证Ubuntu系统的数据在传输过程中的安全性呢?本文为大家讲解在Ubuntu系统中如何对文件进行加密传输。

本文介绍基于Ubuntu Desktop 9.10(i386),采用GNOME集成桌面环境。并设定有两台安装了Ubuntu 9.10桌面版系统的计算机Host1和Host2,都安装了OpenSSH软件包且具有相同的用户账号(为叙述方便,用户名和密码相同)。

准备工作:安装Seahorse密钥管理器插件

默认情况下,Ubuntu 9.10 GNOME集成桌面环境软件没有自带Seahorse密钥管理器插件(seahorse-plugins),因此在Nautilus(鹦鹉螺)文件浏览器中,选中某个文件并点击鼠标右键后,在弹出的快捷菜单中看不到“加密”与“签署”两个选项,从而无法通过图形化的界面(该插件集成在Nautilus文件浏览器中)来对文件进行加密或签署操作。

为此,我们可以使用“apt-get”命令或“新立得软件包管理器”来手动安装该插件。这里以使用命令行方式来安装为例。依次点击菜单“应用程序→附件→终端”,打开GNOME终端窗口后输入如下命令:“sudo apt-get install seahorse-plugins”,命令执行后即可下载并安装“seahorse-plugins”软件包。安装完成后,从当前系统注销并重新登录,即可在上文所述的快捷菜单中看到“加密”和“签署”两项。

要对文件进行加密或签署,首先要创建对应用户的密钥。创建的密钥为一对,分为公钥和私钥。通常将公钥发布出去,由其他用户对文件进行加密。收到其他用户发来的加密文件后,再利用自己的私钥进行解密。

步骤一、在Host1中创建本地用户密钥

依次点击菜单“应用程序→附件→密码和加密密钥”运行Seahorse密钥管理程序。在出现的“密码和加密密钥”窗口中,点击菜单“文件→新建”,则出现“新建”密钥对话框。因为我们要加密的是文件,因此根据说明,选择创建的密钥的类型为“PGP密钥”并点击“继续”按钮进入“新建PGP密钥”对话框。在创建密钥时,需要指定用户的个人信息,如用户名、电子邮件等以及指定加密类型和密钥保密强度等。填写完成后点击“创建”按钮,并输入密钥保护密码后即可创建用户密钥。


步骤二、分发公钥给Host2用户

首先,利用Seahorse密钥管理器导出刚刚创建的公钥。依次点击“密钥和加密密码”窗口中的“文件→导出”,将公钥导出后点击“保存”按钮,则在当前登录用户(testuser)的目录下生成公钥文件“testuser.asc”。接下来,我们将公钥文件传送到Host2主机中(这里以使用“scp”命令为例)。

在Host1上打开一个GNOME终端窗口,输入命令“scp testuser.Asc testuser@Host2:~/.”,执行后首先输入“y”来加入主机Host2到信任主机列表中,再输入Host2上的用户“testuser”的密码,通过后则将Host1上的“testuser.asc”文件复制到Host2主机的testuser用户目录下(/home/testuser)。Host2上的用户接收到密钥文件后,在Seahorse密钥管理器中点击“密钥和加密密码”窗口中的“文件→导入”,在当前登录用户目录下找到文件“testuser.asc”并打开,即可完成导入。

步骤三、Host2用户加密待发文件

有了Host1用户的公钥,在Host2上就可以使用它来对文件进行加密了。在Nautilus文件浏览器中,鼠标右键点击待加密文件,在弹出的快捷菜单中选择“加密”项,则弹出“选择收件人”对话框(如图3所示)。在密钥列表中将自动列出当前系统中的可用密钥,选定刚刚导入的Host1用户的公钥,并勾选其前的方框,点击“确定”按钮,则开始对文件进行加密,并生成“.pgp”文件名结尾的加盟文件(如“abc.pgp”)。


同样,使用“scp”命令将加密后的文件传送到Host1中“scp abc.pgp testuser@Host1:~/.”。

步骤四、Host1用户解密收到的文件

Host1上的用户接收到Host2用户传过来的加密文件后,在Nautilus文件浏览器中鼠标右键点击该文件,在弹出的快捷菜单中选择“使用解密文件打开”,按要求输入密钥保护密码后,程序将使用用户的私钥对文件进行解密,并在当前目录下生成解密后的文件,也就是还原出来Host2用户加密过的文件。

现在需要通过因特网进行远程文件传输的操作已经非常多,而为了保障数据安全,对数据进行加密已经是很切实的应用需求。看过本文,相信大家对于在Ubuntu当中进行加密、解密操作已经有了初步的了解,在今后的应用过程中,大家不妨亲自尝试,以提高数据传输的安全性。
心情模块加载中...

温馨提示:本网使用的部分文字和图片来源于互联网,若有版权问题,请与我们联系!

相关文章推荐

  • Ubuntu Linux系统下设置静态IP的方法

    Ubuntu Linux系统下设置静态IP的方法

    Ubuntu的 网络 参数保存在文件 /etc/network/interfaces中,默认 设置 使用dhcp,内容如下: # The primary network interface auto eth0 iface eth0 inet dhcp 设置 静态ip的 方法 如下: (1)编辑 /etc/network/interfaces 1.1)将dhcp 一行屏蔽 # The pr

  • Ubuntu 8.04中建立PHP+MySQL环境

    Ubuntu 8.04中建立PHP+MySQL环境

    刚安装了Ubuntu8.04,就花了点时间建了基本的支持环境。因为暂时还不应用zend优化,因此这里就不涉及到zend optimizer的安装了。其实在Ubuntu8.04系统中中安装远比在Windows系统中设置更为容易,而且在终端下设置更省事。 1、安装Apache服务 sudo apt-get ins

  • 英特尔力挺Win8.1/安卓双系统

    英特尔力挺Win8.1/安卓双系统

    此前消息称,英特尔是Win8.1/Android系统设备背后的推手;现在,英特尔在CES2014新闻发布会上证实了Dual OS的提议。 英特尔CEO Brian Krzanich证实,英特尔会支持运行Windows和安卓双系统的Dual OS设备。这意味着用户只需按一下按钮,便可以切换不同的系统。

  • Ubuntu中配置Mysql编码的具体步骤

    Ubuntu中配置Mysql编码的具体步骤

    找到配置文件 我是通过sudo apt-get install mysql来安装的。mysql的配置文件在/etc/mysql/my.cnf 如果找不到这个文件,可以运行sudo find / -iname *.cnf查找所有的cnf文件 修改配置文件 在[mysqld]下添加 default-character-set=utf8 在[client]下添加 def

  • Linux/Ubuntu sudo不用输入密码的方法

    Linux/Ubuntu sudo不用输入密码的方法

    打开上网客户端、新立得,这些涉及到系统的都要输入密码,对于我们大多数人来说,用Linux无非是做桌面应用,对安全性没必要搞得跟服务器一些。下面是我的一个解决办法: 在启动时进入安全模式,这时是用root登录的,执行: chmod 740 /etc/sudoers 然后打开/e

  • 解决ubuntu系统下vimtutor乱码

    解决ubuntu系统下vimtutor乱码

    ubuntu自带的vim是vim-tiny版本,不带帮助文档的,当然你在终端输入vimtutor就不会出现那个入门教程了。所以先装上巨型版本:sudo apt-get install vim 但是此时在终端输入vimtutor后却是乱码的帮助文档,这是因为 系统 支持的是utf8格式的,而vimtutor并未

我有问题要问问...

维易问答平台专注于电脑相关问题的在线及时解答,您可以在此提问以获得最佳答案!
关于我们 | 申请入驻 | 广告合作 | 友情链接 | 免责声明 | 投诉建议 | 联系我们 | 网站地图 | Copyright © 2013-2023 维易网 粤ICP备2022127024号
客服 联系站长