1. 程式人生 > >中國地質大學(北京)Linux深度學習服務器終端校園網關賬號密碼登錄問題——以ubuntu14.04server版本為例

中國地質大學(北京)Linux深度學習服務器終端校園網關賬號密碼登錄問題——以ubuntu14.04server版本為例

lib mac地址 raw_input urllib 步驟 ifconf init ifconfig col

學院於2017年12月29日采購一臺深度學習服務器,操作系統為ubuntu14.04server,配置過程遇到各種坑,現就服務器終端命令行網絡配置過程心得分享如下:

1.申請固定IP地址

  開始嘗試從教學樓路由器接一根網線到服務器上,設置好後能訪問外網,但是IP地址訪問不能覆蓋整個校園內網,僅與此路由器相連的電腦可以ip訪問。這是由於路由器分配的是192.168.1.1的小局域ip,需要拿著有效證件以及服務器mac地址(通過ifconfig可查看)到網絡管理中心申請校園內網固定IP地址。

2.設置固定IP地址

  2.1 設置ip地址

    vim /etc/network/interfaces

    作如下修改:

    # The loopback network interface

    auto lo

    iface lo inet loopback

    auto etho

    iface etho inet static

    address 202.204.110.243

    netmask 255.255.255.0

    gateway 202.204.110.254

  2.2 設置DNS

    vim /etc/resolvconf/resolv.conf.d/base

    作修改如下:

    nameserver 202.204.105.1

    nameserver 202.204.105.5

  2.3 刷新配置文件

    resolvconf -u

  2.4 重啟網絡

    /etc/init.d/networking restart

3.登錄校園網關賬號訪問外網

  至此,在校園局域網內可以通過ssh+ip地址訪問服務器,但是下載外網資源需要登錄校園網關。查閱相關資料,主要有兩種方法登錄校園網關賬號密碼,其一,shell腳本,其二,python腳本;這裏我使用的是python腳本命令行登錄校園網關,主要包括登錄和註銷兩個過程:

  a.登錄源碼(connect.py)  

import urllib2  
import urllib  

class Loginer():  
    
def __init__(self, username, password): self.loginUrl = http://202.204.105.195:803/srun_portal_pc.php?ac_id=1& #單引號內替換為校園網登錄網絡地址 self.username = username self.password = password self.openner = urllib2.build_opener() def login(self): postdata = { username: self.username, password: self.password, action: login, ac_id: 1, user_ip:‘‘, nas_ip:‘‘, user_mac:‘‘, url:‘‘ } postdata = urllib.urlencode(postdata) myRequest = urllib2.Request(url=self.loginUrl, data=postdata) result = self.openner.open(myRequest).read() resStr=str(result) ind=resStr.find(font-weight:bold;color:orange) if(ind!=-1): print connected successfully else: print connected faild!! Maybe your username or password is wrong! def main(): username=raw_input(Enter your username:) password=raw_input(Enter your password:) file=open(temp_username.dat,w) file.write(username) file.close() l = Loginer(username,password) l.login() if __name__ == __main__: main() print done

  b.退出源碼(logout.py)

import urllib2  
import urllib  

class Loginer():  
    def __init__(self, username, password):  
        self.loginUrl = http://202.204.105.195:803/srun_portal_pc.php?ac_id=1&  #單引號內替換為校園網登錄網絡地址
        self.username = username  
        self.password = password  
        self.openner = urllib2.build_opener()  

    def login(self):  
        postdata = {  
            username: self.username,  
            info: ‘‘,  
            action: auto_logout,  
            usr_ip: 202.204.105.195  
        }  
        postdata = urllib.urlencode(postdata)  
        myRequest = urllib2.Request(url=self.loginUrl, data=postdata)  

        if(str(self.openner.open(myRequest).read()).find(font-weight:bold;color:orange)!=-1):
            print logout successfully 

def main():  
    file=open(temp_username.dat,r)
    username=file.readline()
    print username
    l = Loginer(username,‘‘)
    l.login()  

if __name__ == __main__:  
    main()  
    print done

  將源代碼copy下來,分別保存成connet.py和logout.py兩個文件。然後copy至服務器運行:(註意替換自己文件所在目錄)

  scp connect.py [email protected]:network/connet.py

  scp logout.py [email protected]:network/logout.py

4.網絡測試

  完成以上步驟後可以通過 ping www.baidu.com測試是否成功配置。

    

  

中國地質大學(北京)Linux深度學習服務器終端校園網關賬號密碼登錄問題——以ubuntu14.04server版本為例