亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 系統 > Unix > 正文

Unix BSD Linux的口令機制初探

2020-10-23 22:24:46
字體:
來源:轉載
供稿:網友
1.概述

  早期UNIX系統把用戶口令保存在一個純文本可讀的“口令文件”中,這可能在系統管理員注意不到的情況下被截取并暴露。它也可能在一次偶然事件中泄露。

  從AT&T UNIX版本6開始,Thompson 等決定采用一個不同的方式: U N I X口令采用以美國軍方M - 2 0 9密碼機為模型的基于旋轉的算法來進行編碼。這種快速算法被證明對窮盡純文本搜索有弱點并被AT&T UNIX版本7中出現的更先進的crypt ( )庫代替。

  現在Unix/Linux將口令以不可讀的方式保存在機器中。系統使用名為cryptographic hash的算法將口令轉換成文本字符串。這個串即稱為散列或者散列值。使用的算法可以有多種,但它們都是不可逆的,也就是說不能從散列值中恢復出原始口令。不同的系統,所使用的密碼文件以及加密算法都可能不同。管理、維護好這些密碼文件是保證系統安全的首要任務。(未特別說明,本文所有命令均在csh下以root身份運行。)

  2.加密算法簡介

  2.1---crypt()簡介---key 和 salt

  在Unix/Linux下存在多種散列算法。可以通過庫函數crypt()調用這些系統支持的算法。crypt()有key和salt兩個參數,并返回相應的散列值。salt亦即我們常說的“鹽”,它只是簡單的字符串,它的長度取決于所使用的算法,不同的散列算法它有不同的取值范圍。所以,即使是相同的算法,相同的原始口令,使用不同的salt,也會得到不同的加密口令。salt的目的也就是為了加大口令破解的難度,當我們使用passwd命令來修改密碼時,它會隨機選擇一個salt. s a l t使得使用預編譯字典對加密口令進行攻擊變得更困難。代替為字典中每個單詞做一次單獨加密,攻擊者現在不得不對字典中每個單詞的4 0 9 6種排列進行加密和儲存。在2 0年前,s a l t是作為本質上的資源障礙引入的,但現在1 2位s a l t不再被認為是一種有效的防御方法。

  crypt()可以在C程序中直接調用,甚至可以用perl直接調用,(詳細信息請man 3 crypt),如下例:

  %perl -e 'print crypt("mypass","s1"),"/n"'

  s1tROevFyi.yQ

  %perl -e 'print crypt("mypass","s2"),"/n"'

  s2JQ85JElCMeU

  以上兩例中s1、s2分別為salt 值,可以看到,相同的口令(上例中為mypass)使用不同的salt將得到不同的散列值。 以上兩例使用的都是DES算法,加密后的散列值將salt值作為其前綴。

  2.2DES算法

  由美國政府和IBM研制。所有的Linux版本和幾乎所有的Unix系統都支持DES.DES實際上為一個加密算法,但是crypt(3)將之做為散列算法。普通的DES算法容許的原始口令長度為8個字符,多余的口令也接受,但是多余部分會被系統自動摒棄。但有些系統(例如HP-UX)使用DES的多次迭代來解決此問題,這樣就可以使用任意長度的密碼。但是使用DES加密后的口令為13個字符長。

  2.3MD5算法

  它是真正的散列算法。允許無限長的口令。它使用的salt空間也別DES算法大得多,所以兩口令相同的可能性更小。它也通過調用crypt(3)函數實現。MD5算法使用的 salt必須以$1$開頭,并以$結尾。且salt長度為8個字符。例如要用abcdef為salt 散列mypass,那么如下:

  %perl -e 'print crypt("mypass","/$1/$abcdef/$"),"/n"'

  $1$abcdef$nRHvewzGzJoYskdQAIEQr

  注:上例中的"/n"均為轉義字符。salt值為$1$abcdef$,原始密碼為mypass,散列值為:$1$abcdef$nRHvewzGzJoYskdQAIEQr

  MD5算法得到的散列值為31個字符長,并且都以$1$開頭。

  2.4其他算法:

  BSDI風格的DES和Blowfish使用也比較廣泛,本文將在后面會有討論。

  2.5 BSD使用的加密機制:

  各種D E S很長一段時間內一直是U N I X口令加密的主要算法,但還有其他算法可以代替D E S?,F代B S D系統提供了一些其他算法的應用范例。缺省情況下, FreeBSD默認使用MD5加密機制,因為MD5沒有出口限制,同時也更安全于DES。DES仍然可用,只不過DES存在的目的僅僅是為了和其他 UNIX系統所用的密碼的向后兼容性。并且使用DES的系統也能鑒別出MD5,因為MD5所用的Hash也在DES中被使用。

  O p e n B S D走得更遠。其開發小組在加拿大,這樣就不受美國的出口限制。O p e n B S D可以被配置成使用傳統的UNIX crypt () 、比如“擴充加密”、M D 5或B l o w f i s h。M D 5由Ronald L.Rivest開發,它在RFC 1321中描述。F r e e B S D和O p e n B S D中基于M D 5的crypt ( ) 產生的口令條目包含版本號、s a l t和哈??诹睿舜酥g用“ $”符號分隔。一個M D 5口令看起來如下:

  $ 1 $ c a e i H Q w X $ h s K q O j r F R R N 6 K 3 2 O W K C B f 1

  這里“$ 1”指明M D 5,“c a e i H Q w X”是s a l t。

  B l o w f i s h由Bruce Schneier在1 9 9 3年開發,是D E S的一個快速、壓縮、簡單且免費的替代品]。雖然S c h n e i e r指出B l o w f i s h不適合產生單向哈希,但O p e n B S D就為這個目的使用它。B l o w f i s h版的crypt ( )使用1 2 8位s a l t,足夠使最堅定的破壞者泄氣。用所有可能的s a l t值進行預編譯的字典將十分昂貴。其最大口令長度為7 2個字符。B l o w f i s h算法是一個由p i的十六進制數字組成的固定字符串進行初始化的。初始化的B l o w f i s h狀態由s a l t和口令進行擴展,該過程重復一定的次數(該數值也被編入口令串中)。最后的B l o w f i s h口令條目是使用B l o w f i s h狀態對字符串“ O r p h e a n B e h o l d e r S c r y D o u b t”加密6 4次而得到的。

  加密的口令條目包含B l o w f i s h版本號、算法重復次數以及s a l t和哈??诹畹倪B結—每個之間由“ $”字符隔開。一個編碼“ 8”將聲明2 5 6次循環。一個有效的B l o w f i s h口令看起來如下:

  $2a$12$eIAq8PR8sIUnJlHaohxX209x9O1m2vk97LJ5dsXdmB.eXF42qjchC

  在這個例子中,初始的擴展進行4 0 9 6次。給出了很大的重復次數和長的口令, B l o w f i s h加密的口令比其他基于傳統D E S機制加密的口令更難被攻擊。給出由這些算法改進所提供的額外安全措施后,它被應用在其他U N I X系統中只是一個時間問題了。

  2.6----如何得知你的系統使用的加密算法

  方法可以有很多,本人簡單列舉幾個:

  方法(1)你可以通過查看 libcrypt[._*]鏈接到/usr/lib下的哪些庫文件來得知你的系統密碼所使用的加密算法。如果鏈接到libcrypt*庫,那么使用的為MD5,如果為libdescrypt*,就應該為DES了。具體操作如下:

  %cd /usr/lib

  %ls -l libcrypt[._]*

  lrwxr-xr-x  1 root  wheel       11 Jun  9 06:18 /usr/lib/libcrypt.a@ ->

  libscrypt.a

  lrwxr-xr-x  1 root  wheel       12 Jun  9 06:19 /usr/lib/libcrypt.so@ ->

  libscrypt.so

  lrwxr-xr-x  1 root  wheel       14 Jun  9 06:21 /usr/lib/libcrypt.so.2@ ->

  libscrypt.so.2

  lrwxr-xr-x  1 root  wheel       13 Jun  9 06:22 /usr/lib/libcrypt_p.a@ ->

  libscrypt_p.a

  %

FreeBSD4.4中,從FreeBSD 4.4開始就完全由login.conf來控制所使用的加密算法,并且默認已經設置為MD5,要改為DES,只須將其中:password_format段的md5替換成des。任何使修改生效,本文后面有詳細的說明。
附:我們強烈建議用戶盡可能的使用MD5庫而非DES.所以往往也很有必要將一些安裝了DES加密算法的系統的DES庫轉換成MD5庫,操作也很簡單,只須先刪除libcrypt[._*]鏈接,然后將它們重新鏈接到相應到md5庫。(即以s代替des):

Links DES MD5
----- --- ---

libcrypt.a libdescrypt.a libscrypt.a
libcrypt.so libdescrypt.so libscrypt.so
libcrypt.so.2 libdescrypt.so.2 libscrypt.so.2
libcrypt_p.a libdescrypt_p.a libscrypt_p.a

方法(2)查看/etc/login.conf中的password_format段。其值md5,des,blf分別對應MD5,DES和blowfish.
方法(3)查看密碼文件/etc/passwd或者/etc/shadow(BSD 下相應為/etc/master.passwd),根據密碼特征得知使用的加密算法。例如以$1$開頭的為MD5,以$2$開頭的為 blowfish.DES沒有明顯的特征,但它的密碼段相對較短,且均為字母,沒有$之類的字符,也很容易辨別!

3.密碼文件

3.1概述:

正如大家所熟悉的,Unix下都存在一個/etc/passwd文件以存放用戶的密碼文件,但是在不同的Unix,Linux,BSD 中它們所起的作用也不盡相同。某些Unix和Linux還使用shadow文件,但FreeBSD中相應的卻為/etc/master.passwd文件。下面將對這些文件進行詳細說明。

3.2/etc/passwd文件

傳統的Unix中均使用該文件來存放用戶密碼。該文件以加密的方式保存口令,其中的口令必須通過passwd口令來生成(如果使用NIS,相應的為ypasswd),或者從另一賬號中復制過來。
P a s s w d文件中的每個條目看起來如下:
n a m e : c o d e d - p a s s w d : U I D : G I D : u s e r - i n f o : h o m e - d i r e c t o r y : s h e l l
7個域中的每一個由冒號隔開??崭袷遣辉试S的,除非在u s e r- i n f o域中使用。下面總結了
每個域的含義:

①name—給用戶分配的用戶名,這不是私有信息。
② c o d e d - p a s s w d—經過加密的用戶口令。如果一個系統管理員需要阻止一個用戶登錄,則經常用一個星號( : * :)代替。該域通常不手工編輯。用戶應該使用p a s s w d命令修改他們的口令。值得注意的一點是許多最近的U N I X 產品依賴“影子口令” — 不在/ e t c / p a s s w d中保存的口令。
③ UID—用戶的唯一標識號。習慣上,小于1 0 0的U I D是為系統帳號保留的。
④ G I D—用戶所屬的基本分組。通常它將決定用戶創建文件的分組擁有權。在Red Hat L i n u x中,每個用戶帳號被缺省賦予一個唯一分組。
⑤ u s e r- i n f o—習慣上它包括用戶的全名。郵件系統和f i n g e r這樣的工具習慣使用該域中的信息。該域也被稱作G E C O S域。
⑥ home-directory—該域指明用戶的起始目錄,它是用戶登錄進入后的初始工作目錄。
⑦ s h e l l—該域指明用戶登錄進入后執行的命令解釋器所在的路徑。有好幾種流行的S h e l l,包括Bourne Shell (/bin/sh),C Shell (/bin/csh),Korn Shell (/bin/ksh)和Bash Shell( / b i n / b a s h )。注意可以為用戶在該域中賦一個/ b i n / f a l s e值,這將阻止用戶登錄。

注意:當編輯/etc/passwd文件來建立一個新賬號時,應在密碼字段放一個"*",(一些偽用戶,例如daemon也如此)以避免用戶未經權而使用該賬號。直到你為此新建賬號設置了真實密碼。



3.2/etc/shadow文件

傳統上,/ e t c / p a s s w d文件在很大范圍內是可讀的,因為許多程序需要用它來把U I D轉換為用戶名。例如,如果不能訪問/ e t c / p a s s w d,那么ls -l命令將顯示數字U I D而不是用戶名。不幸的是,使用口令猜測程序,具有加密口令的可讀/ e t c / p a s s w d文件表現出巨大的安全危險。多數近來的U N I X產品支持一個變通方法:影子口令文件。影子口令系統把口令文件分成兩部分: / e t c / p a s s w d和影子口令文件。影子口令文件保存加密的口令;/ e t c / p a s s w d中的c o d e d - p a s s w o r d域都被置為“X”或其他替代符號。影子口令文件只能被r o o t或像p a s s w d這樣的s e t _ u i d程序在需要合法訪問時讀取,其他所有非授權用戶都被拒絕訪問。習慣上,影子口令文件保存在/ e t c / s h a d o w中,盡管有些系統使用可選的路徑和文件名。例如B S D系統把加密的口令保存在/ e t c / m a s t e r. p a s s w d。

/etc/shadow剖析
/ e t c / s h a d o w文件包含用戶名和加密口令以及下面一些域:
(1) 上一次修改口令的日期,以從1 9 7 0年1月1日開始的天數表示。
(2) 口令在兩次修改間的最小天數??诹钤诮⒑蟊仨毟牡奶鞌怠?
(3)口令更改之前向用戶發出警告的天數。
(4)口令終止后帳號被禁用的天數。
(5)自從1 9 7 0年1月1日起帳號被禁用的天數。
(6)保留域。
下面是一個Red Hat Linux系統中/ e t c / s h a d o w文件的例子:


root:mGqwuvdF41bc:10612:0:99999:7:::
bin:*:10612:0:99999:7:::
daemon*:10612:0:99999:7:::
adm:*:10612:0:99999:7:::
lp*:10612:0:99999:7:::
sync:*:10612:0:99999:7:::
shutdown:*:10612:0:99999:7:::
halt:*:10612:0:99999:7:::
mail:*:10612:0:99999:7:::
news:*:10612:0:99999:7:::
uucp:*:10612:0:99999:7:::
operator:*:10612:0:99999:7:::
freebird:sdfaBh45ZiQn1llfa:10612:0:99999:7:::


缺省情況下,口令更新并不開啟。于是沒有口令更改前的最小天數,也沒有口令必須更改的日期。口令在99 999天內必須更換的聲明幾乎無用,因為從現在起幾乎還有2 5 0年。在口令終止前7天警告用戶的聲明也沒用,除非選擇使用口令更新。在本例中沒有聲明,還可以在口令終止和帳號禁用之間設置一個時間段。

在可選影子口令功能的系統中,用一條相對簡單的命令設置并更新影子口令文件:p w c o n v。該命令在影子口令文件不存在的情況下創建一個新的。如果已存在一個影子文件,p w c o n v把/ e t c / p a s s w d中的新用戶添加到/ e t c / s h a d o w中,把/ e t c / p a s s w d中沒有的用戶從影子文件中刪去,并把口令從/ e t c / p a s s w d移到影子文件中。在Red Hat Linux中,p w c o n v把新的/ e t c / p a s s w d文件寫到一個名為n p a s s w d的文件中,把新影子文件寫到n s h a d o w中。這些新文件需要手工進行重命名或拷貝。用戶可以用p w u n c o n v命令返回到不使用影子文件的情況下,它把影子文件中的信息合并回傳統的口令文件中。

提示:早期的L i n u x不支持影子口令。
注意:在solaris下,必須使用隱蔽口令文件,在Linux下,如果用戶安裝了shadow軟件也可以使用。

3.2/etc/master.passwd

在BSD下,實際的口令文件是/etc/master.passwd.,這里的密碼都是簡單的文本數據庫,每個用戶占一行,行中字段用":"隔開。 /etc/master.passwd權限為0600,而/etc/passwd為0644,這就意味著任何人都人存取/etc/passwd.但只有 root才能讀取/etc/master.passwd.
在BSD中,/etc/master.passwd是/etc/passwd的超集,它直接生成/etc/passwd文件。所以在BSD中 /etc/passwd文件總是不需要直接進行編輯。一旦運行vipw,passwd,chfn,chsh或者chpass這些命令,也是對 /etc/master.passwd進行修改。并且修改后會自動生成/etc/passwd.(一同生成的還有由pwd_mkdb工具生成的 /etc/master.passwd的散列表形式。)
平面文件數據庫(/etc/passwd,/etc/master.passwd)都只對少量用戶合適,用戶一多,查找速度就慢。因此在BSD 下相應的還有兩個數據庫格式的散列表/etc/pwd.db和/etc/spwd.db,其權限也和上面兩文件對應。每次運行chfn,passwd等命令后,pwd_mkdb都會自動修改這兩個文件。

提示:若希望根據另一個FreeBSD重新構件用戶列表或者從另一個FreeBSD機器移植一個用戶列表,只須簡單的把新的master.passwd(比如master.passwd.new)文件置于/etc/下(或/ 下),然后運行如下命令(注意先備份):


%cp /etc/master.passwd /etc/master.passwd.bak
%pwd_mkdb -p /etc/master.passwd.new


這樣/etc/master.passwd文件將被覆蓋,其他三個文件也得以重建。(-p即為生成新的/etc/passwd)

注意:/etc/master.passw文件和shadow文件形式和功能都相同,但是和/etc/master.passwd不同的是,Linux下(或其他系統)使用的/etc/shadow文件并非/etc/passwd文件的超集。/etc/passwd文件也并非由/etc/shadow文件產生,需要手工維護這兩個文件。



4.BSD下使用“密碼過期機制”
“密碼過期”意即超過規定的時間密碼無效,用戶必須在此之前修改密碼。要實現此功能,需要修改/etc/login.conf文件,在default段中加入passwordtime=90d(或者2y,6w,24h之類的)如:


default:/
    :password_format=md5:/
    :copyright=/etc/COPYRIGHT:/
    :welcome=/etc/motd:/
    :passwordtime=24h:/


因為/etc/login.conf數據庫必須編譯成一個散列表,所以必須運行cap_mkdb程序,以生成此散列表,然后才能使修改生效。如下操作:


%cap_mkdb /etc/login.conf

這樣,若24小時內未修改密碼,登陸時將提示輸入新的密碼。

注意:在設置passwordtime屬性時,passwd會在/etc/master.passwd的第六字段寫入最后一次修改密碼的時間。
/etc/login.conf在密碼及其他設置方面還有很多值得使用的地方,不妨man 看看。

后記

本文只簡要的說明了一下Unix/Linux特別是BSD的口令機制,要也因本人水平,不能在此文深入的論述此問題。關于密碼的安全性,以及密碼破解和任何使用更安全的加密機制等問題,本人會在以后撰文論述。

參考資料:
man 5 passwd
man 3 crypt
man md5
man des
man login.conf
DES-to-MD5-(mini)HOWTO
《Hacking Linux Exposed》
《Unix System Administrator Handbook》

作者簡介:
Freebird,姓名:匡萃彪。CNFUG核心成員。Unix 的狂熱追隨者,熟悉BSD,Linux, Solaris,C,Shell。主要研究方向:各種服務器架設、系統和網絡安全、內核源碼分析以及英文文檔翻譯。歡迎您通過 freebird@cnfug.org與本人聯系。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
2019国产精品自在线拍国产不卡| 日韩av123| 粗暴蹂躏中文一区二区三区| 日韩精品视频三区| 九九精品视频在线观看| 高清视频欧美一级| 中文字幕日韩专区| 欧美另类69精品久久久久9999| 亚洲激情视频在线观看| 久久精品国产一区| 久久99热精品这里久久精品| 久久久久久久97| 久久午夜a级毛片| 国产精品美女999| 成人av在线网址| 97超碰蝌蚪网人人做人人爽| 精品magnet| 国产精品精品久久久久久| 欧美国产日韩一区| 亚洲最大成人在线| 亚洲无线码在线一区观看| 中文字幕在线成人| 国产精品夜色7777狼人| 隔壁老王国产在线精品| 久久久这里只有精品视频| 日韩国产精品视频| 欧美日韩国产精品| 91欧美激情另类亚洲| 亚洲欧美日韩爽爽影院| 欧美激情中文字幕在线| 亚洲精选中文字幕| 欧美成人国产va精品日本一级| 国产亚洲精品美女久久久| 欧美激情中文字幕在线| 久久精品人人爽| 日韩成人性视频| 亚洲欧美在线看| 精品免费在线观看| 欧美激情一区二区三区成人| 久久夜色撩人精品| 欧美在线播放视频| 亚洲人永久免费| 超碰日本道色综合久久综合| 欧美一级片免费在线| 亚洲大胆人体av| 国产精品jizz在线观看麻豆| 国产成人精品电影| 国产欧美日韩高清| 国产成人精品国内自产拍免费看| 欧美亚洲成人网| 亚洲精品动漫100p| 国产成人精品免费视频| www.久久久久| 欧美国产激情18| 亚洲a区在线视频| 亚洲国产精品va在线看黑人动漫| 国内精品视频久久| 亚洲精品99久久久久| 亚洲欧洲日产国码av系列天堂| 亚洲美女又黄又爽在线观看| 91爱爱小视频k| 久久精品亚洲精品| 欧美资源在线观看| 日韩激情在线视频| 欧美高清电影在线看| 亚洲性av在线| 精品自拍视频在线观看| 久久69精品久久久久久久电影好| 亚洲的天堂在线中文字幕| 亚洲第一区中文99精品| 少妇高潮 亚洲精品| 欧美在线视频网站| 国产丝袜一区二区| 懂色av一区二区三区| 久久亚洲精品成人| 国产美女被下药99| 精品国产一区二区在线| 成人免费高清完整版在线观看| 国产一区二区三区毛片| 亚洲综合精品伊人久久| 午夜精品美女自拍福到在线| 国产丝袜精品视频| 亚洲欧洲日产国码av系列天堂| 日韩欧美精品网站| 在线日韩中文字幕| 国产精品爽爽爽爽爽爽在线观看| 久久九九国产精品怡红院| 国产盗摄xxxx视频xxx69| 亚洲春色另类小说| 91中文字幕在线| 国产视频福利一区| 久久精品国产v日韩v亚洲| 国产激情综合五月久久| 亚洲乱码av中文一区二区| 国产精品情侣自拍| 久久久久久久一区二区三区| 国产日韩av在线| 日韩精品高清视频| 97免费视频在线播放| 欧美另类极品videosbest最新版本| 日韩高清av在线| 92国产精品久久久久首页| 亚洲色图偷窥自拍| 清纯唯美亚洲激情| 九九久久精品一区| 国产精品久久久久7777婷婷| 久久久国产精品免费| 欧美电影在线观看网站| 日韩精品视频观看| 久久成人18免费网站| 91视频九色网站| 国产精品视频精品| 亚洲一区www| 久久精品中文字幕一区| 久久影院资源网| 国产精品久久网| 亚洲欧美另类在线观看| 97精品国产97久久久久久免费| 91成人福利在线| 久久成人精品视频| 欧美高清在线播放| 91美女高潮出水| 欧美俄罗斯乱妇| 亚洲精品成人网| 亚洲欧美在线磁力| 成人国产精品久久久| 日韩美女免费观看| 亚洲精品国精品久久99热| 日韩国产精品视频| 亚洲男女性事视频| 国产成人avxxxxx在线看| 国产日韩av在线播放| 91久久久国产精品| 77777亚洲午夜久久多人| 日本国产高清不卡| 国产精品免费久久久久久| 国产欧美日韩91| 日韩经典中文字幕在线观看| 日韩在线免费视频| 欧洲美女免费图片一区| 亚洲无限乱码一二三四麻| 欧美激情精品久久久久久| 欧美大片va欧美在线播放| 精品久久久中文| 欧美一区二区色| 亚洲天堂成人在线视频| 久久99久久亚洲国产| 色综合久久精品亚洲国产| 91色视频在线导航| 亚洲伊人成综合成人网| 伊人久久久久久久久久久久久| 国内精品久久久久影院 日本资源| 亚洲黄在线观看| 亚洲欧美国产视频| 亚洲国产精品999| 日韩av网站导航| 亚洲男子天堂网| 亚洲国产精品va在线| 永久免费精品影视网站| 中文字幕亚洲情99在线| 中国日韩欧美久久久久久久久| 亚洲天堂av电影| 97国产精品久久| 亚洲精品视频中文字幕|